[閒聊] 為什麼java的使用率比較高?

看板Soft_Job (軟體人)作者 (sunlights)時間10年前 (2015/12/17 17:31), 10年前編輯推噓25(25056)
留言81則, 41人參與, 最新討論串1/8 (看更多)
這是我在win7平台 iis+php7 iis+asp.net(C# .net4) java(1.8)+tomcat 跑出來的 loop test (10000000) php 0.25 java 0.013 .net 0.015 database test select 13446 data use mysql php 0.018 java 0.052 .net 0.028 loop select 21 times use mysql php 0.01 java 0.143 .net 0.01 select 13446 data use oracle php 0.039 java 2.036 .net 0.029 loop select 21 times use oracle php 0.029 java 0.335 .net 0.037 select 13446 data use mssql(express) php 0.053 java 6.26 .net 0.034 loop select 21 times use mssql(express) php 0.05 java 129.451 .net 0.133 看起來C#的效能是最優的..為什麼 java的使用率仍是超越.net的呢? http://tinyurl.com/qyos7vg -- ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1450344689.A.ABE.html

12/17 17:34, , 1F
跨平台+比較早出+Android用Java開發?
12/17 17:34, 1F

12/17 17:35, , 2F
數據差的有點多 是不是有用到一級或二級緩存?
12/17 17:35, 2F

12/17 17:35, , 3F
windows 限定啊
12/17 17:35, 3F

12/17 17:37, , 4F
你要open source這樣比較好分析原因吧
12/17 17:37, 4F

12/17 17:42, , 5F
中文表達都不行的人 其testplan沒有參考價值
12/17 17:42, 5F
補上版本

12/17 17:49, , 6F
因為安卓啊
12/17 17:49, 6F

12/17 17:49, , 7F
linux bj4
12/17 17:49, 7F

12/17 17:58, , 8F
你java該不會沒卦上connection pooling吧...
12/17 17:58, 8F

12/17 18:01, , 9F
程式語言的使用率本來就和效能或設計優劣沒有直接關係
12/17 18:01, 9F

12/17 18:19, , 10F
一般比較不同語言 有看source code來比比較準
12/17 18:19, 10F

12/17 18:24, , 11F
然後java會有所謂的warm up 不知道這個測試有沒有排除這問題
12/17 18:24, 11F

12/17 18:48, , 12F
看來, 全面改用PHP7 不就好了.
12/17 18:48, 12F

12/17 18:50, , 13F
這是香蕉蘋果橘子的比較,比不完的。
12/17 18:50, 13F

12/17 18:51, , 14F
平台再好也是有人可以寫成垃圾。
12/17 18:51, 14F

12/17 19:00, , 15F
試試nginx + php
12/17 19:00, 15F

12/17 19:02, , 16F
然後選用語言跟語言特性有關 你不會帶著一堆寫C#的團隊
12/17 19:02, 16F

12/17 19:02, , 17F
寫java吧
12/17 19:02, 17F

12/17 19:04, , 18F
還是要看怎麼寫,去看看 big data 都用啥寫
12/17 19:04, 18F

12/17 19:20, , 19F
這些會跟連資料庫的driver不同而有誤差,建議以一樣的
12/17 19:20, 19F

12/17 19:20, , 20F
邏輯,用不同的程式去跑比較客觀,例如自己寫一個selec
12/17 19:20, 20F

12/17 19:20, , 21F
tion sort,用一樣資料的array等等
12/17 19:20, 21F

12/17 19:21, , 22F
另外程式要找跑得快的來開發,那你全部都用c寫好了
12/17 19:21, 22F

12/17 19:30, , 23F
C未必就是快
12/17 19:30, 23F

12/17 19:30, , 24F
不同語言比這個個人覺得意義不大
12/17 19:30, 24F

12/17 19:31, , 25F
同一語言同用途不同框架去比效能才有意義
12/17 19:31, 25F

12/17 20:00, , 26F
C未必就是快? 改成ASSEMBLY 就快了.
12/17 20:00, 26F

12/17 20:01, , 27F
你拿c++來測測看,然後開o3優化,loop會變成0.000秒
12/17 20:01, 27F

12/17 20:02, , 28F
然後效率在很多狀況上根本不是考慮的因素,更不是唯一因素
12/17 20:02, 28F

12/17 20:03, , 29F
所以拿效率來問為什麼比較多人使用很奇怪
12/17 20:03, 29F

12/17 20:08, , 30F
推樓上大大
12/17 20:08, 30F

12/17 20:27, , 31F
咦,有什麼狀況是可以不考慮效率的?
12/17 20:27, 31F

12/17 20:40, , 32F
有時候開發速度比執行速度重要
12/17 20:40, 32F

12/17 20:41, , 33F
不是不考慮執行效率,只是開發速度更重要
12/17 20:41, 33F

12/17 20:50, , 34F
使用者感受不到。
12/17 20:50, 34F

12/17 21:02, , 35F
不是不考慮效率 而是你不會只考慮語言的效率而選擇
12/17 21:02, 35F

12/17 21:03, , 36F
現實面就是開發速度比效率要重要得多
12/17 21:03, 36F

12/17 21:05, , 37F
JAVA一開始主打的優勢就是跨平台 你會拿來跟C比效率嗎
12/17 21:05, 37F

12/17 21:23, , 38F
這測試超怪...為什麼還把tomcat iis都包進來...
12/17 21:23, 38F

12/17 21:37, , 39F
傻瓜用傻瓜語言,傻瓜人數比較多~~
12/17 21:37, 39F

12/17 21:39, , 40F
語言選擇要考慮需求阿 C# .net會有平台限制...
12/17 21:39, 40F

12/17 21:40, , 41F
要不然全部都用組語寫不是最快= =
12/17 21:40, 41F

12/17 21:59, , 42F
source code拿給高手調一下,也許測試結果倒過來...
12/17 21:59, 42F

12/17 22:35, , 43F
喊效率至上的人實在應該去寫ASM才對
12/17 22:35, 43F

12/17 22:46, , 44F
有時為了可讀性 也會犧牲一點效率
12/17 22:46, 44F

12/17 22:54, , 45F
用錯詞了...我想說的是效能(performance)...
12/17 22:54, 45F

12/17 22:58, , 46F
開發效率 是先求有 效能是求好 先求有再求好 很正常的事
12/17 22:58, 46F

12/17 23:24, , 47F
這只證明了你不會寫JAVA
12/17 23:24, 47F
連資料庫我是用下面的這種碼連 DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver()); Connection conn = DriverManager.getConnection ("jdbc:oracle:thin:@XXX.XXX.XXX.XXX:1521:SID","USER", "PASSWORD"); 不知道有何錯誤?? ※ 編輯: sunlights (111.240.99.172), 12/17/2015 23:33:13

12/17 23:35, , 48F
這只證明了你不會寫JAVA
12/17 23:35, 48F
那請寫出自己的測試數據啊..畢竟我都有測出來了.. 有人連連線都有困難.. ※ 編輯: sunlights (111.240.99.172), 12/17/2015 23:38:00

12/17 23:37, , 49F
Code or Environment 的任何一個環節都會產生影響.
12/17 23:37, 49F

12/17 23:40, , 50F
快把你測試的code、configuration跟版本資料丟上github啊
12/17 23:40, 50F

12/17 23:43, , 51F
你可以試著加入conn pool效能會*n。 G神查一下c3p0吧
12/17 23:43, 51F

12/17 23:47, , 52F
求有?求好? 原來是這樣, 怪不得台灣的系統,都沒"有"囉.
12/17 23:47, 52F

12/17 23:51, , 53F
以現在的開發節奏,在初期執行效率本來就不是最重要的
12/17 23:51, 53F

12/17 23:52, , 54F
全面改用10二進位好了 效率最好
12/17 23:52, 54F

12/18 00:01, , 55F
c3p0有點舊了 可以用HikariCP試試看
12/18 00:01, 55F

12/18 00:16, , 56F
你寫什麼屁,都最後都是二位在走的啊,這..
12/18 00:16, 56F

12/18 00:17, , 57F
新名詞, 初期執行效率, 有解釋嗎? 有初, 哪有末期嗎?
12/18 00:17, 57F

12/18 00:25, , 58F
哪麼, 什麼期執行效率才變得重要呢?
12/18 00:25, 58F

12/18 00:26, , 59F
相信, 這是一系列很好的問題.
12/18 00:26, 59F

12/18 01:04, , 60F
有點看不懂跟標題有何關聯
12/18 01:04, 60F

12/18 01:20, , 61F
你oracle那種連法當然慢到爆...........
12/18 01:20, 61F

12/18 01:21, , 62F
你兩年前還發一樣的問題勒 = =
12/18 01:21, 62F

12/18 01:43, , 63F
https://goo.gl/pPIfGZ 研究2年了??
12/18 01:43, 63F

12/18 01:51, , 64F
兩年前沒PHP7!!
12/18 01:51, 64F

12/18 06:16, , 65F
poc時好漂亮的數據, 上線後都是they的錯...╮(╯▽╰)╭
12/18 06:16, 65F

12/18 07:32, , 66F
無參考價值
12/18 07:32, 66F

12/18 10:00, , 67F
先不論結果是不是正確,但是似乎測試主場是微軟環境...
12/18 10:00, 67F

12/18 10:18, , 68F
因為效率不是唯一考量因素 更何況效率跟環境有關...
12/18 10:18, 68F

12/18 10:38, , 69F
又有新理論出來了, 哪還有哪些考量因素呢?
12/18 10:38, 69F

12/18 10:39, , 70F
跟環境有關? 要水土保持嗎?
12/18 10:39, 70F

12/18 10:39, , 71F
這也是不錯的TOPIC 呢.
12/18 10:39, 71F

12/18 11:40, , 72F
還是搞不懂為何只是效能測試有必要包web container?
12/18 11:40, 72F

12/18 11:49, , 73F
可見你寫程式的程度只到php等級^.<
12/18 11:49, 73F

12/18 11:55, , 74F
樓上不要偷戰PHP
12/18 11:55, 74F

12/18 12:31, , 75F
PHP:我又中槍?
12/18 12:31, 75F

12/18 12:55, , 76F
不是不重效能,開發也要考慮到速度時辰與工具
12/18 12:55, 76F

12/18 12:57, , 77F
每種語言特性都不同,使用率跟效能有什麼關聯
12/18 12:57, 77F
我用hikariCP import com.zaxxer.hikari.HikariConfig; import com.zaxxer.hikari.HikariDataSource; Connection conn = null; Statement stmt = null; ResultSet rs = null; HikariConfig config = new HikariConfig(); config.setMaximumPoolSize(100); config.setDataSourceClassName("com.mysql.jdbc.Driver"); config.addDataSourceProperty("serverName", "localhost"); config.addDataSourceProperty("port", "3306"); config.addDataSourceProperty("databaseName", "aaa"); config.addDataSourceProperty("user", "root"); config.addDataSourceProperty("password", "bbb"); HikariDataSource ds = new HikariDataSource(config); conn = ds.getConnection(); stmt = conn.createStatement(); sql="select * from tabl"; rs = stmt.executeQuery(sql); while(rs.next()){ ........ } 但是一直連不上.. ps:該下載的都有下載.. ※ 編輯: sunlights (118.163.80.109), 12/18/2015 15:43:14

12/18 18:26, , 78F
PHP: QQ
12/18 18:26, 78F

12/19 21:33, , 79F
自古文人相輕
12/19 21:33, 79F

12/21 17:27, , 80F
秒買秒退,食安喚回 http://j.mp/_ts_
12/21 17:27, 80F

12/21 18:29, , 81F
秒買秒退,食安喚回 http://j.mp/_ts_
12/21 18:29, 81F
文章代碼(AID): #1MSe3ng- (Soft_Job)
討論串 (同標題文章)
文章代碼(AID): #1MSe3ng- (Soft_Job)