`

关于数据建模(面向ER)和领域模型建模(面向OO)在企业应用中的作用的讨论

 
阅读更多
<iframe align="center" marginwidth="0" marginheight="0" src="http://www.zealware.com/csdnblog336280.html" frameborder="0" width="336" scrolling="no" height="280"></iframe>

号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




号称排在国内四大Java组织之后的Java老鸟群(:1775725)的一次讨论:略微删减聊天的部分后的对话,贴在这里,欢迎大家指正:

magicgod
(2240529) 15:27:08
ror还是比较适合个人和小型团队

magicgod
(2240529) 15:27:25
短平快的东西,不太适合大公司

米米饭
(582197) 15:27:40
怎么不说,JAVA也适合比较小的公司或团队

magicgod
(2240529) 15:27:43
公司大了,这么多人,这么多角色总得找点事做吧

米米饭
(582197) 15:27:56
其实ROR压根就没有生存的必要

magicgod
(2240529) 15:28:18
已经存在了,还讨论什么生存的必要啊

NO.1狗狗
(200865271) 15:28:24
那python呢?

米米饭
(582197) 15:28:51
那就让他灭亡,研究点JAVA敏捷,或PHP敏捷多好

magicgod
(2240529) 15:29:35
倒,灭亡不是个人说了算的,如果它不适应时代,必然灭亡

米米饭
(582197) 15:29:43
多搞出一个敏捷来,其实压根不比别的敏捷更好,又不能比别的有更强的企业特性

♂纯月♀
(88659854) 15:29:53
这种东西既然出现了,就让他出现吧

magicgod
(2240529) 15:30:41
php刚出来的时候也是这样说的

magicgod
(2240529) 15:30:53
有生命力的东西会自然延续下去的

米米饭
(582197) 15:32:23
支持ROR不应该用这种理由:)

magicgod
(2240529) 15:32:39
至少我个人觉得在写ror的时候比java流畅

米米饭
(582197) 15:33:49
存在即合理,是懒人的托辞,我觉得实践的比较最有价值,这点,我非常欣赏matt raible,他是个老实人

magicgod
(2240529) 15:34:05
我记得有个人说了一种语言的时代已经过去了,什么东西适应就用什么

米米饭
(582197) 15:34:32
但是有优劣高下之分:)你做为严肃的比较么

米米饭
(582197) 15:36:03
优秀的技术适合优秀的人,普通的技术适应普通的人。最差的就是哗众取宠的技术适应被广告蒙蔽的人

♂纯月♀
(88659854) 15:36:05
magicgod写过php么

magicgod
(2240529) 15:36:33
是指ejb?

magicgod
(2240529) 15:37:06
j2ee的架构在今天 来看也算是伟大的结构,但是总用着不是味儿

米米饭
(582197) 15:38:25
开源社区需要每个人的贡献:)用着不是味就学rod johnson

米米饭
(582197) 15:39:00
spring我觉得和ejb并不冲突,在java ee里对spring和hibernate都可以和平共处

米米饭
(582197) 15:39:25
只有ROR,我觉得这个人真是个浮躁的人,我那天说过了

米米饭
(582197) 15:39:32
个人英雄主义

米米饭
(582197) 15:40:04
把这个水平,放在JAVA社区,说不定可以发挥更大的作用

米米饭
(582197) 15:40:11
搞ROR真是浪费

♂纯月♀
(88659854) 15:40:22
RoR的让那些没用过PHP的人看到脚本语言原来这么方便

米米饭
(582197) 15:41:07
反对个人英雄主义误导消费者

magicgod
(2240529) 15:42:18
我觉得我还是厌倦了频繁启动服务器

米米饭
(582197) 15:42:24
瞧人家matt raible,用JAVA一样可以搞出ROR

米米饭
(582197) 15:42:34
比ROR强N多

magicgod
(2240529) 15:44:10
他也用ubuntu?

米米饭
(582197) 15:44:18
我那天讲过一个APPFUSE和敏捷开发:)

Totodo
(888669) 15:44:29
Ruby 都用什么开发呢。。

♂纯月♀
(88659854) 15:44:40
[自定义表情]

magicgod
(2240529) 15:45:16
appfuse是不是还是用ant?

Jtwo易易
(65541585) 15:45:25


♂纯月♀
(88659854) 15:45:32
php开发的门户首页,经过优化后,平均只要30ms的响应时间

magicgod
(2240529) 15:45:52
说实在的为什么java的速度是那么地慢,尽管语言方面性能还是很强的

magicgod
(2240529) 15:46:14
我一直期待它的性能能提高,可是非常失望

米米饭
(582197) 15:46:19
所有的东西只讨论思想的高下,不讨论语言的高下

[/wx]newsky
(41561701) 15:46:22
加的功能太多了

[/wx]newsky
(41561701) 15:46:37
如果只用servlet做也是很快的

米米饭
(582197) 15:46:56
比较语言,就太没意思了

magicgod
(2240529) 15:47:12
倒,说实在的,tomcat的速度我已经无法忍受了

♂纯月♀
(88659854) 15:47:31
是的,就像比较武功一样,少林和武当那个强?

NO.1狗狗
(200865271) 15:47:50
我觉的能做出好的东西来就是好东东

magicgod
(2240529) 15:48:01
两年前我使用ror,那时候还是webbrick,速度非常糟,现在有了mongrel,好多了

米米饭
(582197) 15:48:07
速度很快.

米米饭
(582197) 15:48:09
java

♂纯月♀
(88659854) 15:48:10
没有优化的程序,平均在200ms,优化之后20ms,提升了10倍

♂纯月♀
(88659854) 15:48:28
而这个优化技术和语言是无关的

米米饭
(582197) 15:48:29
请使用思想来提高速度

Jtwo易易
(65541585) 15:48:35
tomcat还可以啊

♂纯月♀
(88659854) 15:48:40
无非是静态缓存,内存驻留

magicgod
(2240529) 15:49:03
我现在一边做java,一边做ror,做java的时候必须关闭大部分东西

magicgod
(2240529) 15:49:30
做ror的时候还可以起个vm

♂纯月♀
(88659854) 15:49:36
我开发php应用,只要一个ultraedit

♂纯月♀
(88659854) 15:49:51
apache


magicgod
(2240529) 15:50:07
php确实不错,还有zend,可惜没机会用

NO.1狗狗
(200865271) 15:50:32
php快被淘汰拉

米米饭
(582197) 15:50:37


NO.1狗狗
(200865271) 15:50:46
以后会出来一种三维浏览器脚本技术

♂纯月♀
(88659854) 15:50:46
你认为VB被淘汰了么

magicgod
(2240529) 15:50:47
不可能吧,php正在第二个大发展时期呢

NO.1狗狗
(200865271) 15:51:01
html也会被淘汰的

♂纯月♀
(88659854) 15:51:03
或者说VB6,delphi6

NO.1狗狗
(200865271) 15:51:10
浏览器也会被淘汰

NO.1狗狗
(200865271) 15:51:16
整个革命新时代到来了

♂纯月♀
(88659854) 15:51:17
现在用这些开发的公司多如牛毛

米米饭
(582197) 15:51:18
语言又来讨论了。还是讨论点实在的

Jtwo易易
(65541585) 15:51:45
要有高度

magicgod
(2240529) 15:51:59
我觉得java正在学习ror的东西,建立新的敏捷

米米饭
(582197) 15:52:24
要是JAVA在七年前就像今天这个水平,月月可能就不会用PHP了

Jtwo易易
(65541585) 15:52:47
java=拼装,笨的很

米米饭
(582197) 15:52:51
敏捷不是ROR的

NO.1狗狗
(200865271) 15:53:15
java=bug

米米饭
(582197) 15:53:21
敏捷是软件开发的共同的思想

Jtwo易易
(65541585) 15:53:25
java的东东太多太多了

♂纯月♀
(88659854) 15:53:29
4年前我就用ssh,但是现在我还是用php,因为很多web应用的本质,不就是把数据存到数据库么

米米饭
(582197) 15:54:04
oo很重要:0

magicgod
(2240529) 15:54:08
我觉得不能忍受java的是:1.频繁重启。2.无法即时debug。

♂纯月♀
(88659854) 15:54:10
搞再多的中间件也无非是这个目的,我用php把响应时间控制在几十ms,每秒也能处理几百次事务

米米饭
(582197) 15:54:47
java社区的生生不息,离不开OO的增强,MDA,XDOCLET....

magicgod
(2240529) 15:55:05
其实oo还是smalltalk好

米米饭
(582197) 15:55:43
SOA说白了,我觉得也是OO

米米饭
(582197) 15:55:51
反正OO才是王道

♂纯月♀
(88659854) 15:56:00
smalltalk太学院派了,不适合工业生产

米米饭
(582197) 15:56:07
JAVA最适合OO,因此JAVA是王道

magicgod
(2240529) 15:56:12
smalltalk可惜不是ms搞的

magicgod
(2240529) 15:56:28
实际上java并不是最适合OO的,应该是smalltalk

magicgod
(2240529) 15:56:49
smalltalk很适合M$的思路, 如果在里面会有大发展,真是可惜了

米米饭
(582197) 15:58:54
使用 CakePHP 快速打造 Web 站点,这是什么东东》?

♂纯月♀
(88659854) 15:59:09
是的,所以很多东西不是好就能有市场

magicgod
(2240529) 15:59:18
smalltalk世界里所有的东西真正是对象啊

♂纯月♀
(88659854) 15:59:28
类似于java的turbine,jboss的seam这样的东西

♂纯月♀
(88659854) 15:59:53
面向对象并不是最好的开发思想,目前阶段的应用是面向数据(库)的多

magicgod
(2240529) 15:59:57
而且没有明显的运行时和开发时

magicgod
(2240529) 16:00:41
在现实世界中OO被人为地分割为多个对象空间,导致耦合成本增加,带来许多问题

Jtwo易易
(65541585) 16:01:09
在国内有面向对象的产品?

♂纯月♀
(88659854) 16:01:18
你OO,人家olap还多纬度呢,到时候又要抽象很多对象

Jtwo易易
(65541585) 16:01:36
复杂的很

Jtwo易易
(65541585) 16:01:42
还是MS强

♂纯月♀
(88659854) 16:01:48
天桥说的对,大部分产品是面向db的

Jtwo易易
(65541585) 16:02:01
复杂的在MS那都简单了

米米饭
(582197) 16:02:14
面向DB,DB的设计原则是什么呢

米米饭
(582197) 16:02:29
那还是主要以OO为主

Jtwo易易
(65541585) 16:02:37
从数据库利用工具反向生成hb所要的文件

Jtwo易易
(65541585) 16:02:41
不知是在做什么

♂纯月♀
(88659854) 16:02:45
数据优先,最先考虑数据,关系的稳定,性能

♂纯月♀
(88659854) 16:03:23
正如我说的,domain model和table做一一映射

米米饭
(582197) 16:03:28
RDB,关系和对象的 关系 ,谁研究过

Jtwo易易
(65541585) 16:03:55
domain model设计阶段的产物

♂纯月♀
(88659854) 16:04:12

Jtwo易易
(65541585) 16:04:18
现在很多都是反的

Jtwo易易
(65541585) 16:04:22
没有domain model

Jtwo易易
(65541585) 16:04:38
反向来生成“domain model”

♂纯月♀
(88659854) 16:04:47
应该是先ER,在Domain

Jtwo易易
(65541585) 16:05:23
我是先概念

♂纯月♀
(88659854) 16:06:07


Jtwo易易
(65541585) 16:06:19
这样好生成目标数据库模型

米米饭
(582197) 16:06:57
数据库设计范型,是不是就是为了设计出一个好好的OO模型

Jtwo易易
(65541585) 16:07:00
概念模型-》数据库模型/对像模型

米米饭
(582197) 16:07:39
数据库的产生比OO产生得早,要是晚,那肯定没有范型,直接说OO就是设计范型

magicgod
(2240529) 16:07:43
关系型数据库来描述OO天生有缺陷,但是没办法

magicgod
(2240529) 16:08:07
其实树型数据库来描述更好一点

Jtwo易易
(65541585) 16:08:11
历史不容改变

♂纯月♀
(88659854) 16:08:42
你说范式吧

米米饭
(582197) 16:08:51
对。

♂纯月♀
(88659854) 16:09:11
正因为有范式,所以要把OO和ER结合起来,反复推敲,找出最合适得范式

♂纯月♀
(88659854) 16:09:36
OO往往都是考虑最优的范式,但实际生产中,需要大量的容易

♂纯月♀
(88659854) 16:10:41
华为的信息机的表是这样建的,每一分钟建一张表,表的名字是0000-1259,你说这是什么范式

♂纯月♀
(88659854) 16:11:02
错了是0000-2359

magicgod
(2240529) 16:11:09
糟糕的范式吧

看上去很美
(965243) 16:11:16
效率考虑

看上去很美
(965243) 16:11:31
范式没必要过分遵循要考虑效率

♂纯月♀
(88659854) 16:11:44
这是工业生产和学院派的不同

看上去很美
(965243) 16:11:46
不糟糕不这么做没办法达到效率要求

米米饭
(582197) 16:11:54
效率有数据效率和开发效率

米米饭
(582197) 16:12:01
那应该考虑哪个呢

看上去很美
(965243) 16:12:26
技术为生产服务

♂纯月♀
(88659854) 16:12:38
清华的学生可以设计一个相当复杂的算法,印度班加罗二的工人们只要一个又臭又长的hash表来解决问题

米米饭
(582197) 16:12:48
如果用OO,一个月就开发完了,不用,结果开发了一年,并且后期维护像是一场恶梦

米米饭
(582197) 16:12:58
你说什么是效率

♂纯月♀
(88659854) 16:13:30
OO和ER来结合起来考虑

♂纯月♀
(88659854) 16:13:42
找到一个平衡点

看上去很美
(965243) 16:13:52
开发效率实际使用效率都要考虑找平衡点

米米饭
(582197) 16:14:21
用DB4O

米米饭
(582197) 16:14:29
就不用都考虑了

♂纯月♀
(88659854) 16:14:34
和具体框架无关

米米饭
(582197) 16:14:54
浪费程序员的青春,数据效率应该是数据库提供商来解决的

米米饭
(582197) 16:15:03
程序员应该关注OO,而不是数据的效率

看上去很美
(965243) 16:15:03
。。。。。。

♂纯月♀
(88659854) 16:15:11
正因为这样,我才觉得RoR纯粹的DSL没有生命力

看上去很美
(965243) 16:15:15
谬论

看上去很美
(965243) 16:15:26
程序员也需要考虑效率

看上去很美
(965243) 16:16:01
数据库提供商考虑得出了效率还有一致性、完整性、鲁棒性、容量、维护。。。。多了去了

foxcrane
(6947930) 16:16:55
清华的学生 和 印度班加罗二的工人 教育成本不一样啊

米米饭
(582197) 16:16:56
让数据库提供商考虑去吧。我认为程序员不是DBA

Jtwo易易
(65541585) 16:16:56
小字打出来,鸟还没打出来,你就出来啦

foxcrane
(6947930) 16:17:07
开发出来的东西稳定性也不一样

foxcrane
(6947930) 16:17:17
人家成本又低,开发出来的东西又稳定

米米饭
(582197) 16:17:32
数据库和程序员不搭,所以持久层的作用是隔离程序员和数据库

Jtwo易易
(65541585) 16:17:33
其实这些不是主要的

magicgod
(2240529) 16:17:42
软件开发势必走两个极端,个性艺术和大规模工厂式

看上去很美
(965243) 16:17:51
性能优化案例的分析结果:DBA能提升的效率不到20%,而程序员通过优化编码提升的效率往往是数量级的

米米饭
(582197) 16:17:58
程序员是脱离数据库,面向企业业务逻辑的。

看上去很美
(965243) 16:18:11
你说的程序员是程序工人

♂纯月♀
(88659854) 16:18:22
企业业务逻辑的核心就是数据(库)

米米饭
(582197) 16:18:36
不是吧。

米米饭
(582197) 16:18:41
应该是流程

看上去很美
(965243) 16:18:45
做架构是从优良的数据结构设计开始的

magicgod
(2240529) 16:18:46
应该还有流程吧

foxcrane
(6947930) 16:18:50
另外,清华学生可不是万里挑一出来的,是精英中的精英

看上去很美
(965243) 16:18:53
♂纯月♀@老鸟(88659854) 16:30:22 企业业务逻辑的核心就是数据(库) ---agree

♂纯月♀
(88659854) 16:18:55
数据+流程

magicgod
(2240529) 16:19:12
不会吧,清华现在的高度有这么高了?

米米饭
(582197) 16:19:13
数据库和平台一样,都要跨平台

♂纯月♀
(88659854) 16:19:20
流程也很重要,不是那是后话

看上去很美
(965243) 16:19:33
流程----通过数据来实现最终还是落到数据上

foxcrane
(6947930) 16:19:35
印度班加罗二的工人 工人比就有这么高,人家是高中毕业的.....

米米饭
(582197) 16:19:40
依赖一种数据库的不是好的企业应用,纯数据应用除外

magicgod
(2240529) 16:19:48
数据为中心是数据库兴起来的主流

米米饭
(582197) 16:20:29
弱化数据库依赖,也是我认为的JAVAEE的设计原则之一

♂纯月♀
(88659854) 16:20:30
你就是开发一个网络游戏,首要考虑的也是所有人物,事件,状态的资料如何高效的存储

♂纯月♀
(88659854) 16:21:07
存储过程在很多情况下,是非常必要

看上去很美
(965243) 16:21:17
太必要了...

♂纯月♀
(88659854) 16:21:22
弱化对数据库的依赖固然好,但有没有想过弱化对java,对中间件的依赖呢

看上去很美
(965243) 16:21:25
这个月一直在写

Jtwo易易
(65541585) 16:21:35
没有

Jtwo易易
(65541585) 16:21:44
都被java给蒙蔽了

magicgod
(2240529) 16:21:49
花在中间件上的钱未必是有用的

Jtwo易易
(65541585) 16:21:55
总想着怎么拼装的漂亮

Jtwo易易
(65541585) 16:22:04
显得多么的高深

♂纯月♀
(88659854) 16:22:05
如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好

米米饭
(582197) 16:22:36
OO和MDA的目标是工业化生产

Jtwo易易
(65541585) 16:22:43
实际点

米米饭
(582197) 16:22:45
依赖数据库是特殊应用

看上去很美
(965243) 16:22:46
♂纯月♀@老鸟(88659854) 16:34:05 如果有一个好的proc,不管任何语言,只要有db的api,都能调用proc,这种兼容性不是更好 ---是不错

看上去很美
(965243) 16:22:54
但是过分依赖存储过程也有问题

Jtwo易易
(65541585) 16:23:04
不要走极端

♂纯月♀
(88659854) 16:23:09
是的,那样业务逻辑会过于分散

看上去很美
(965243) 16:23:15
数据库应用为了保障一致性完整性等等

Jtwo易易
(65541585) 16:23:16
1+1都不会绝对=2呢

♂纯月♀
(88659854) 16:23:19
不走极端,找到一个平衡

看上去很美
(965243) 16:23:21
会有很多额外的开销

米米饭
(582197) 16:23:32
主要目标不同啊。

Jtwo易易
(65541585) 16:23:41
可行性

Jtwo易易
(65541585) 16:23:58
目标其实没么重要

♂纯月♀
(88659854) 16:24:04
辩证法的核心就是在矛盾中找到平衡点

米米饭
(582197) 16:24:10
敏捷也是一种工业生产的思想

米米饭
(582197) 16:24:28
干部说的那种不在这个范围之内

Jtwo易易
(65541585) 16:24:34
那你还不是跟着国外的那些人唱和

♂纯月♀
(88659854) 16:24:46
华为信息机提供了dll,jar的接口,但是我php就不方便调用,好在它有存储过程,这样还是可以很方便的发送短信

Jtwo易易
(65541585) 16:24:50
不都是看他们的文档听他们说

看上去很美
(965243) 16:24:58
我是最近被效率问题搞怕了.....

Jtwo易易
(65541585) 16:25:17
实践过了的才是真的

Jtwo易易
(65541585) 16:25:29
光看文档搞拼装有什么用

♂纯月♀
(88659854) 16:25:39
敏捷是口号,重构是方法,快速原型是工具

♂纯月♀
(88659854) 16:25:46
你什么效率问题啊

看上去很美
(965243) 16:26:03
大数据量入库并作业务,业务查询为主

米米饭
(582197) 16:26:39
干部一直在搞特殊应用...所以没办法啊。你的想法很难复制和工业化

看上去很美
(965243) 16:26:40
1000个终端,一小时产生4条明细记录一条记录500多个字段

看上去很美
(965243) 16:27:02
不是特殊应用企业应用中这问题太常见了

看上去很美
(965243) 16:27:17
机器是pcserver 还是32位oracle

♂纯月♀
(88659854) 16:27:44
这样应用只有拼命压榨系统性能了

米米饭
(582197) 16:27:45
五百个字段,还不特珠

Jtwo易易
(65541585) 16:27:51


看上去很美
(965243) 16:27:58
还有很多业务逻辑

看上去很美
(965243) 16:28:14
这些数据传上来的时候有明细也有历史

Jtwo易易
(65541585) 16:28:22
现实问题

看上去很美
(965243) 16:28:34
业务需要取极值,取最后时间点值

看上去很美
(965243) 16:28:50
数据上传得先后和实际产生的先后并不一致

看上去很美
(965243) 16:29:47
我逼得没办法跟他们谈了一下,放弃实时处理,每一小时批量转换处理一次。实时处理只做update

看上去很美
(965243) 16:29:57
update只针对小数据量表

♂纯月♀
(88659854) 16:30:26
有没有采用MoM结构

看上去很美
(965243) 16:30:40
原来停机一天,再启动,一天历史数据处理完毕要6-7小时现在只需要7-8分钟

[/wx]newsky
(41561701) 16:30:56
MoM结构是什么结构??

看上去很美
(965243) 16:30:58
通讯时间除外,通讯大概要几十分钟

看上去很美
(965243) 16:31:01
没有

♂纯月♀
(88659854) 16:31:07
基于消息的异步处理

[/wx]newsky
(41561701) 16:31:14


看上去很美
(965243) 16:31:30
是gprs传输用的是老外的中间件是否基于消息机制不得而知

♂纯月♀
(88659854) 16:31:57
还是用了中间件啊

看上去很美
(965243) 16:32:06
不过实现上原理应该是一样的达到异步消息处理的要求

看上去很美
(965243) 16:32:21
也就是老外做的dll 编码还是自己做

看上去很美
(965243) 16:33:49
7-8分钟还有优化的余地不过懒得动脑筋了大大的满足目前要求就行了

♂纯月♀
(88659854) 16:34:45
所有的处理都是基于存储过程?

看上去很美
(965243) 16:35:21
通讯入库不是我做了张500多字段的接口表

看上去很美
(965243) 16:35:27
是不是觉得很愚蠢

看上去很美
(965243) 16:35:38
没办法,我测试多次,这样最快

看上去很美
(965243) 16:35:54
因为转换逻辑中很多1条记录变3-6条的

看上去很美
(965243) 16:36:13
如果直接分表存放,通讯程序作了太多事情

看上去很美
(965243) 16:36:32
他获取连接次数很多

foxcrane
(6947930) 16:38:22
500多字段的接口表 那维护不累死了啊,你的业务真BT啊

♂纯月♀
(88659854) 16:38:38
无所谓,因为你最终还是要解析这些参数

♂纯月♀
(88659854) 16:38:41
放在那里解析都一样啊

看上去很美
(965243) 16:38:43
是的

看上去很美
(965243) 16:38:55
分表放我解析起来逻辑还复杂

米米饭
(582197) 16:39:43
这是面向效率编程:0

米米饭
(582197) 16:39:45
:)

♂纯月♀
(88659854) 16:39:47
这个无所谓,反正表都做索引

看上去很美
(965243) 16:40:12
接口表处理完就清空

看上去很美
(965243) 16:40:21
保证接口表数据量最小

看上去很美
(965243) 16:40:44
业务表做成分区表所以按业务需要做成全表索引和分区索引

♂纯月♀
(88659854) 16:40:47
接口表是临时表吧

看上去很美
(965243) 16:40:57
索引优化还没完全做完

看上去很美
(965243) 16:41:16
接口表是固定表

看上去很美
(965243) 16:41:28
创建临时表的开销我也给省掉了

♂纯月♀
(88659854) 16:41:48
临时表驻留内存不是更快

看上去很美
(965243) 16:42:24
入接口表是通讯作转换接口表的数据是存储过程作

看上去很美
(965243) 16:42:30
没办法用临时表

♂纯月♀
(88659854) 16:43:01
o

看上去很美
(965243) 16:43:30
我的系统分区表快达到上限了

米米饭
(582197) 16:43:43
这个问题困挠了你很久了:)

看上去很美
(965243) 16:44:14
因为最终用户it水平很低我也没办法今后保证给他们做长期db维护所以预先建了10年的按日分区

看上去很美
(965243) 16:44:27
呵呵,估计5年就换

♂纯月♀
(88659854) 16:45:10
难道5年换的时候,以前的数据都不要了

看上去很美
(965243) 16:45:15
困扰了一段时间解决方案早就有了但是一直没实际测试

看上去很美
(965243) 16:45:22
这次测试通过了

看上去很美
(965243) 16:45:38
数据保留2年即可超过的导出来备份

米米饭
(582197) 16:45:45
企业倒闭数据就没用了。:)

米米饭
(582197) 16:46:17
不倒闭,再上新系统,再搞大量的ETL..真是累啊

米米饭
(582197) 16:46:36
典型的中国式软件:)

♂纯月♀
(88659854) 16:46:40
哦,是什么行业的客户?

看上去很美
(965243) 16:46:56
不需要阿

看上去很美
(965243) 16:47:08
历史数据为什么要etl?

看上去很美
(965243) 16:47:11
电力

看上去很美
(965243) 16:47:26
我们这数据量不算多的不过机器配置算低的

♂纯月♀
(88659854) 16:48:41
哦,ETl到DW,那就安全了

米米饭
(582197) 16:49:02
其实我在搞NMS,数据采集,在很久以前,中兴就开始学习OO思想

米米饭
(582197) 16:49:20
现在开源的NMS,已经用上SPRING hibernate了

♂纯月♀
(88659854) 16:50:00
数据采集就更不能oo了,我们监控主干的netflow流量,每天都几个G的数据

♂纯月♀
(88659854) 16:50:17
一直再等google 的GFS开源,用它的那套存储

米米饭
(582197) 16:50:21
:)你看中兴的系统就知道了,节点完全是OO的

NO.1狗狗
(200865271) 16:50:49
开源?

米米饭
(582197) 16:50:52
业务上OO,底层交给snmp

NO.1狗狗
(200865271) 16:50:53
不可能吧

♂纯月♀
(88659854) 16:50:55
结点是可以oo,不过流量数据,你要处理的话,OO就没用了

米米饭
(582197) 16:52:21
分层开发,各司其所,底层数据写入怎么写无关紧要,只要提供接口就可以

♂纯月♀
(88659854) 16:53:04
你谈的是web应用的开发

米米饭
(582197) 16:54:03
算是吧,不过我还是觉得核心做的事,是很小的一部分,大部分软件的价值通过上层应用来体现

♂纯月♀
(88659854) 16:55:16
web应用只是NMS的一部分,还有大量的算法例如,拓扑发现,定位等等




分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics