→ y2468101216: 可能是我誤解了CLI(command line),我同事基本上是處 02/23 13:27
→ y2468101216: 裡oracleDB轉換成mssqlDB他是選擇用java寫 02/23 13:28
→ y2468101216: 後來我接這塊時改用PHP寫,效能確實是有差 02/23 13:29
→ y2468101216: 對資料庫做大量IO時我還是傾向於要先編譯的語言 02/23 13:30
推 Blueshiva: 如果是連DB的話,driver的差異有考慮進去嗎? 02/23 13:54
推 y2468101216: oracle跟mssql driver都是官方提供 02/23 14:32
→ y2468101216: 你要用開源風險很高 02/23 14:32
→ Blueshiva: 我指的是PHP/Java連DB的driver,不是很熟但印象中他們 02/23 14:34
→ Blueshiva: 會對最終效能造成影響 02/23 14:34
→ y2468101216: PHP我是用oci8原生,不是pdo_oci8,JAVA部分我要看 02/23 14:51
→ GALINE: 用第三方 lib 來戳 DB 的時候,例如 Laravel 的 ORM,效能 02/23 15:12
→ GALINE: 可能會被吃掉不少,直接用 pdo 去戳的效能我覺得過得去 02/23 15:13
→ GALINE: 原生 driver 就要看官方 driver 寫得如何了.... 02/23 15:14
推 Blueshiva: 應該說,連DB的效能取決三段,語言/driver/DB,問題是 02/23 15:17
→ Blueshiva: 不同語言連的driver就不同了,所以用連DB效能反推語言 02/23 15:17
→ Blueshiva: 效能,誤差應該蠻大的。不過@y2468101216的用法本來就 02/23 15:18
→ Blueshiva: 是串在一起用,所以合在一起考量是必要的。只是不太能 02/23 15:19
→ Blueshiva: 用這個結果來說PHP或Java效能的差異 02/23 15:19
→ y2468101216: 難不成mssql跟oracle有官方以外的選項? 02/23 15:21
→ y2468101216: 我懂你意思了,不過php的driver是用C寫的(我的記憶 02/23 15:22
→ GALINE: 是說,會需要在意這種事情的時候,也不是新手了.... 02/23 15:23
→ y2468101216: java的要看就是,我跟java不熟 02/23 15:23
→ y2468101216: 新手做老手的事情不是台灣常幹的嗎 02/23 15:24
推 Blueshiva: 都是C寫效能也可能差很多啊 XDD 中間變數太多了 02/23 15:37
→ y2468101216: 我來搜尋看看有沒有人幹driver的問題 02/23 15:44
推 kiwatami: db牽扯到的效能影響太多了 光是sql語法跟log buffer調 02/24 08:54
→ kiwatami: 整就差了十萬八千里 拿來比較效能不客觀 sql語法不同 02/24 08:54
→ kiwatami: 程式寫法也有差異 一筆一筆寫跟產生store procedure不 02/24 08:54
→ kiwatami: 論是程式面還是DB效能差異都頗大 前者在程式寫法的影響 02/24 08:54
→ kiwatami: 又更多一些 另外Aqua Fold好像就有DB migration的解決 02/24 08:54
→ kiwatami: 方案了 02/24 08:54
推 Blueshiva: y2468101216講的方式,應該可以忽略DB本身特性的問題, 02/24 10:31
→ Blueshiva: 因為都是從A DB轉資料到B DB,只是轉移工具是用Java跟 02/24 10:32
→ Blueshiva: PHP寫,沒理由用Java的時候就把DB tune到飛快,用PHP的 02/24 10:32
→ Blueshiva: 時候就刻意tune慢 XDD 02/24 10:33
大批資料轉移算是比較特定的問題,不會是新手的煩惱
而且以這個特定例子,我不覺得用 ruby 或 python 能快到哪裡去 XD
主要是 PHP 堪用,市佔率高,容易上手,週邊支援完整
對新手來說,能完整做出東西比什麼都重要
而對於要深入的人來說,PHP 不但可以應付大部分的柴米油鹽需求
真的很閒的時候也可以拿來寫 Gameboy 模擬器,吃飽太閒嗎這人 =__=a
https://github.com/gabrielrcouto/php-terminal-gameboy-emulator
※ 編輯: GALINE (114.27.95.249), 02/24/2016 12:21:42
推 v2266514: 說真的,他們都只是個工具。都能達成大部份需求,只是不 02/24 22:17
→ v2266514: 同的需求用特定的語言比較有優勢,或是省下功夫。所以初 02/24 22:17
→ v2266514: 學者不妨從看的懂或用的順手的語言下手,等到在一個語言 02/24 22:17
→ v2266514: 奠定相關的基礎後再轉也不遲 02/24 22:17
推 kiwatami: 不同的DB設定對於不同的程式寫法差異本來就很大 02/25 08:35
→ kiwatami: 調整的越不好 跑起來的差異就會越大 02/25 08:35
→ kiwatami: 並不是兩次測試設定值都不同的意思 怎麼可以忽略 02/25 08:35
推 Blueshiva: @kiwatami不過你之前講的那幾個差異性,其實都可以設定 02/25 13:08
→ Blueshiva: 成一樣,所以要比較效能的時候其實可以忽略 02/25 13:09
噓 lonki719: 寫程式的都很辛苦,半年一年就出新技術,要一直學習, 03/15 21:23
→ lonki719: 分什麼初學者? 03/15 21:23