锁定老帖子 主题:产线管理系统,如何做架构?
精华帖 (0) :: 良好帖 (2) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-06-09
最后修改:2009-06-09
现在我们考虑重新开发系统,因为Delphi渐渐不支持了,以及因为效率的原因,要换到3层的架构。我们主管的想法是使用.net开发。我不知道.net的界面是否可以支持跨平台。 我个人因为兴趣原因,想用python+pyqt+django+salalchemy来开发系统,但是因为自己的实力不够,所以不好来推这样的架构,我的想法是客户端用pyqt,采用xmlrpc连接业务逻辑服务器,同时运行一个web服务器来显示查询页面(也可以整合到客户端中),DB端用sqlalchemy连到oracle。 请问各位觉得我的想法如何,有什么更好的实现方式(实在不想用.net开发,但是考虑到可维护性,不知道.net能够撑多久)? 列一下需求: 3层架构 夸平台 能够运行本地程序,做一些交互 方便分布(产线电脑,有些是局域网,只能访问特定的服务器) 方便开发(个人建议能够接近Literate Programming,或者脚本式开发) 实时性好,产线作业员可等不了几秒。 我们的开发team为3人,我是主程序员,可以在架构上面说得上话。只要我能够开发出一个原型,并作出分析报告,采用我的架构应该没有问题。业务逻辑都是现成的,只要按照逻辑重新coding就好了。 我对架构的方面完全没有经验,请问应该如何去学习相关的知识呢? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2009-06-17
。net能跨平台???????
|
|
返回顶楼 | |
发表时间:2009-06-18
|
|
返回顶楼 | |
发表时间:2009-06-18
最后修改:2009-06-18
我做过类似的系统,这样的系统功能跨度比较大,如果可能的话建议只用Java写。
不知道“客户端”机器配置怎样,如果配置相当好的话和服务器端可以用ActiveMQ做消息通信,如果配置差一点的话再考虑用PyQt什么的来调服务器上的Web Service。如果时间充足的话可以自定义一套消息协议,在服务器端准备一个线程池接收消息,这套消息系统恐怕需要一个人专门维护。服务器端越简单越来越好,Tomcat足够了,最好连Tomcat也别用,ActiveMQ可以单独启动,自己做的消息系统就更不用说了。 至于打印什么的,做好了消息通讯之后一个礼拜的时间就能完成。 做这样的系统最佳搭配莫过于tuxedo了,不过报出价来你们老板肯定不接受。 你给的信息有限,不知道“客户端”的软件需要输入一些什么样的内容。所以一些细节上没法帮你参谋。这样的系统干系重大,所以多花一些时间做得精细一些很有必要。 祝好运。 |
|
返回顶楼 | |
发表时间:2009-06-20
1. 前端BS,就不存在什么语言写了,所有客户端有浏览器就行了。前段作业员处理的数据会被送到Q
2. 消息中间件,Websphere MQ,制造产线不需要省钱,要做制造执行系统的公司应该产能都不错的 3. 后端过账实际事务处理代码,获取MQ的数据到DB,从C到JAVA到.NET都可以 我们公司目前还有一种模式,就是没有Q,并且由于没有了Q,我们事务处理的代码都是用PL/SQL写的,我给你推荐有Q的那种 还有在DB设计上,这个需要根据你们产线复杂性及产能来定,我的建议,有一张表是存放所有生产历史的(这张表可能需要考虑水平切割,看你能够预计的数据量),还有一张表是存放目前产线上产品状态的,手机编号在这张表里是主键。讲讲为什么: 当老板想通过你这个系统知道本月生产出来了多少个手机,从历史表中可以知道,当然我相信你们的ERP中也可以知道;当老板想知道公司目前产线上还有多少正在生产中的手机,就从状态表中知道。 |
|
返回顶楼 | |
发表时间:2009-06-21
最后修改:2009-06-21
ziyi 写道 1. 前端BS,就不存在什么语言写了,所有客户端有浏览器就行了。前段作业员处理的数据会被送到Q
这种程序用BS的太少了,因为需要生成条码和刷条码,极有可能要用串口通信,所以如果厂房内配备的机器性能比较好的话还是用Swing搭配起来会比较顺,而且这种软件界面不会很复杂。 |
|
返回顶楼 | |
发表时间:2009-06-21
可以采用纯java来开发,客户端使用swing编写,netbeans ui可视化设计器还是不错的。
听说delphi现在在开发跨平台版本,不知道什么时候出来。 |
|
返回顶楼 | |
发表时间:2009-06-22
cyberblue 写道 我做过类似的系统,这样的系统功能跨度比较大,如果可能的话建议只用Java写。
不知道“客户端”机器配置怎样,如果配置相当好的话和服务器端可以用ActiveMQ做消息通信,如果配置差一点的话再考虑用PyQt什么的来调服务器上的Web Service。如果时间充足的话可以自定义一套消息协议,在服务器端准备一个线程池接收消息,这套消息系统恐怕需要一个人专门维护。服务器端越简单越来越好,Tomcat足够了,最好连Tomcat也别用,ActiveMQ可以单独启动,自己做的消息系统就更不用说了。 至于打印什么的,做好了消息通讯之后一个礼拜的时间就能完成。 做这样的系统最佳搭配莫过于tuxedo了,不过报出价来你们老板肯定不接受。 你给的信息有限,不知道“客户端”的软件需要输入一些什么样的内容。所以一些细节上没法帮你参谋。这样的系统干系重大,所以多花一些时间做得精细一些很有必要。 祝好运。 客户机有新有旧,有装2000,XP,debian的。 客户端有几种工作,有些只需要刷产品条码来作流程管控, 有些需要打印条码(copy xxx.txt lpt1的方式) 有些需要调用外部程序对产品作一些测试。 |
|
返回顶楼 | |
发表时间:2009-06-22
ziyi 写道 1. 前端BS,就不存在什么语言写了,所有客户端有浏览器就行了。前段作业员处理的数据会被送到Q
2. 消息中间件,Websphere MQ,制造产线不需要省钱,要做制造执行系统的公司应该产能都不错的 3. 后端过账实际事务处理代码,获取MQ的数据到DB,从C到JAVA到.NET都可以 我们公司目前还有一种模式,就是没有Q,并且由于没有了Q,我们事务处理的代码都是用PL/SQL写的,我给你推荐有Q的那种 还有在DB设计上,这个需要根据你们产线复杂性及产能来定,我的建议,有一张表是存放所有生产历史的(这张表可能需要考虑水平切割,看你能够预计的数据量),还有一张表是存放目前产线上产品状态的,手机编号在这张表里是主键。讲讲为什么: 当老板想通过你这个系统知道本月生产出来了多少个手机,从历史表中可以知道,当然我相信你们的ERP中也可以知道;当老板想知道公司目前产线上还有多少正在生产中的手机,就从状态表中知道。 1. 我们需要打印条码和调用程序,前端用BS做不了或者做不好。 2. 看起来大家都是java阵营的,请问学习这些中间件的知识看什么书? DB设计还好,用现成的。 |
|
返回顶楼 | |
发表时间:2009-06-22
最后修改:2009-06-23
> 客户机有新有旧,有装2000,XP,debian的。
这个估计要做好测试,看一下软件在机器上的运行速度是否在容忍的范围内,不过我当初做Swing的时候用的机器是Celeron600,机器再差也不会差过这个吧。 > 客户端有几种工作,有些只需要刷产品条码来作流程管控, 这个地方用串口通信就可以,javax.comm(http://java.sun.com/products/javacomm/)或rxtx(http://users.frii.com/jarvi/rxtx/)都可以,但是前提是需要知道条码阅读器的通信协议,如果手册上没写的话只能根据数据猜了,或是利用附带的DLL做JNI。 > 有些需要打印条码(copy xxx.txt lpt1的方式) 这个比较好办,但是条码是用什么工具生成的?不知道软件是不是还要有生成条码的功能。 > 有些需要调用外部程序对产品作一些测试。 这个是最难的地方,不知道外部程序的启动时间是多少,每次检测都启动一下会不会很浪费时间,如果绑定在当前系统里不很合适的话还是剥离出去比较好,用文件或者数据库导出信息。 祝好运 |
|
返回顶楼 | |