作者sunlights (sunlights)
看板Soft_Job
标题[闲聊] 为什麽java的使用率比较高?
时间Thu Dec 17 17:31:23 2015
这是我在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://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1450344689.A.ABE.html
1F:→ dreamnook: 跨平台+比较早出+Android用Java开发? 12/17 17:34
2F:推 grief3: 数据差的有点多 是不是有用到一级或二级缓存? 12/17 17:35
3F:→ Deltaguita: windows 限定啊 12/17 17:35
4F:推 grief3: 你要open source这样比较好分析原因吧 12/17 17:37
5F:→ manaup: 中文表达都不行的人 其testplan没有参考价值 12/17 17:42
补上版本
6F:推 crossdunk: 因为安卓啊 12/17 17:49
7F:推 Eric0605: linux bj4 12/17 17:49
8F:→ edward13: 你java该不会没卦上connection pooling吧... 12/17 17:58
9F:推 littleshan: 程式语言的使用率本来就和效能或设计优劣没有直接关系 12/17 18:01
10F:推 DWR: 一般比较不同语言 有看source code来比比较准 12/17 18:19
11F:推 DWR: 然後java会有所谓的warm up 不知道这个测试有没有排除这问题 12/17 18:24
12F:→ Lordaeron: 看来, 全面改用PHP7 不就好了. 12/17 18:48
13F:→ bbser: 这是香蕉苹果橘子的比较,比不完的。 12/17 18:50
14F:→ bbser: 平台再好也是有人可以写成垃圾。 12/17 18:51
15F:推 Masakiad: 试试nginx + php 12/17 19:00
16F:推 Masakiad: 然後选用语言跟语言特性有关 你不会带着一堆写C#的团队 12/17 19:02
17F:→ Masakiad: 写java吧 12/17 19:02
18F:→ taliao: 还是要看怎麽写,去看看 big data 都用啥写 12/17 19:04
19F:推 sing10407: 这些会跟连资料库的driver不同而有误差,建议以一样的 12/17 19:20
20F:→ sing10407: 逻辑,用不同的程式去跑比较客观,例如自己写一个selec 12/17 19:20
21F:→ sing10407: tion sort,用一样资料的array等等 12/17 19:20
22F:→ sing10407: 另外程式要找跑得快的来开发,那你全部都用c写好了 12/17 19:21
23F:→ bbser: C未必就是快 12/17 19:30
24F:推 NodeWay: 不同语言比这个个人觉得意义不大 12/17 19:30
25F:→ NodeWay: 同一语言同用途不同框架去比效能才有意义 12/17 19:31
26F:→ Lordaeron: C未必就是快? 改成ASSEMBLY 就快了. 12/17 20:00
27F:推 LaPass: 你拿c++来测测看,然後开o3优化,loop会变成0.000秒 12/17 20:01
28F:→ LaPass: 然後效率在很多状况上根本不是考虑的因素,更不是唯一因素 12/17 20:02
29F:→ LaPass: 所以拿效率来问为什麽比较多人使用很奇怪 12/17 20:03
30F:推 gn00273680: 推楼上大大 12/17 20:08
31F:→ Lordaeron: 咦,有什麽状况是可以不考虑效率的? 12/17 20:27
32F:→ leafwind: 有时候开发速度比执行速度重要 12/17 20:40
33F:→ leafwind: 不是不考虑执行效率,只是开发速度更重要 12/17 20:41
34F:→ DrTech: 使用者感受不到。 12/17 20:50
35F:→ NodeWay: 不是不考虑效率 而是你不会只考虑语言的效率而选择 12/17 21:02
36F:→ NodeWay: 现实面就是开发速度比效率要重要得多 12/17 21:03
37F:→ NodeWay: JAVA一开始主打的优势就是跨平台 你会拿来跟C比效率吗 12/17 21:05
38F:→ nenpow: 这测试超怪...为什麽还把tomcat iis都包进来... 12/17 21:23
39F:推 wesley234: 傻瓜用傻瓜语言,傻瓜人数比较多~~ 12/17 21:37
40F:推 hidog: 语言选择要考虑需求阿 C# .net会有平台限制... 12/17 21:39
41F:→ hidog: 要不然全部都用组语写不是最快= = 12/17 21:40
42F:推 sayya2311: source code拿给高手调一下,也许测试结果倒过来... 12/17 21:59
43F:→ cha122977: 喊效率至上的人实在应该去写ASM才对 12/17 22:35
44F:推 yyc1217: 有时为了可读性 也会牺牲一点效率 12/17 22:46
45F:→ cha122977: 用错词了...我想说的是效能(performance)... 12/17 22:54
46F:→ s860134: 开发效率 是先求有 效能是求好 先求有再求好 很正常的事 12/17 22:58
47F:推 jerry74: 这只证明了你不会写JAVA 12/17 23:24
连资料库我是用下面的这种码连
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
48F:→ manaup: 这只证明了你不会写JAVA 12/17 23:35
那请写出自己的测试数据啊..毕竟我都有测出来了..
有人连连线都有困难..
※ 编辑: sunlights (111.240.99.172), 12/17/2015 23:38:00
49F:→ jen1121: Code or Environment 的任何一个环节都会产生影响. 12/17 23:37
50F:→ manaup: 快把你测试的code、configuration跟版本资料丢上github啊 12/17 23:40
51F:→ jen1121: 你可以试着加入conn pool效能会*n。 G神查一下c3p0吧 12/17 23:43
52F:→ Lordaeron: 求有?求好? 原来是这样, 怪不得台湾的系统,都没"有"罗. 12/17 23:47
53F:→ stupidbear: 以现在的开发节奏,在初期执行效率本来就不是最重要的 12/17 23:51
54F:推 p23j8a4b9z: 全面改用10二进位好了 效率最好 12/17 23:52
55F:→ yyc1217: c3p0有点旧了 可以用HikariCP试试看 12/18 00:01
56F:→ Lordaeron: 你写什麽屁,都最後都是二位在走的啊,这.. 12/18 00:16
57F:→ Lordaeron: 新名词, 初期执行效率, 有解释吗? 有初, 哪有末期吗? 12/18 00:17
58F:→ Lordaeron: 哪麽, 什麽期执行效率才变得重要呢? 12/18 00:25
59F:→ Lordaeron: 相信, 这是一系列很好的问题. 12/18 00:26
60F:推 cser945: 有点看不懂跟标题有何关联 12/18 01:04
61F:→ edward13: 你oracle那种连法当然慢到爆........... 12/18 01:20
62F:→ edward13: 你两年前还发一样的问题勒 = = 12/18 01:21
64F:→ Lordaeron: 两年前没PHP7!! 12/18 01:51
65F:→ kwk22: poc时好漂亮的数据, 上线後都是they的错...╮(╯▽╰)╭ 12/18 06:16
66F:→ felixgugu: 无参考价值 12/18 07:32
67F:→ newways: 先不论结果是不是正确,但是似乎测试主场是微软环境... 12/18 10:00
68F:推 Ekmund: 因为效率不是唯一考量因素 更何况效率跟环境有关... 12/18 10:18
69F:→ Lordaeron: 又有新理论出来了, 哪还有哪些考量因素呢? 12/18 10:38
70F:→ Lordaeron: 跟环境有关? 要水土保持吗? 12/18 10:39
71F:→ Lordaeron: 这也是不错的TOPIC 呢. 12/18 10:39
72F:推 grief3: 还是搞不懂为何只是效能测试有必要包web container? 12/18 11:40
73F:→ andyatkins: 可见你写程式的程度只到php等级^.< 12/18 11:49
74F:→ y2468101216: 楼上不要偷战PHP 12/18 11:55
75F:→ kenwufederer: PHP:我又中枪? 12/18 12:31
76F:→ qweqweqweqwe: 不是不重效能,开发也要考虑到速度时辰与工具 12/18 12:55
77F:→ qweqweqweqwe: 每种语言特性都不同,使用率跟效能有什麽关联 12/18 12:57
我用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
78F:→ sing10407: PHP: QQ 12/18 18:26
79F:推 Timba: 自古文人相轻 12/19 21:33