由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 有人熟悉c++ Qt吗?
相关主题
求建议:C++的TCP/IP编程库boost的deadline_timer要多脑残才能整出来?
C++11 大家有用过吗?11下的多线程
C++11痛并快乐着狗家又open source一个底层C++ library
boost vs C++11ZT:C++未来断想
小白一问:vista下面用什么C编译器?C++中如何处理日期时间?
请教C++ thread libraryboost::variant 的问题
c++ 怎么让一段程序每10秒钟run一次?which Regular Expression lib in C++ do you prefer?
想知道家在linux下都有什么c++ socket library请推荐好的c++下的matrix库
相关话题的讨论汇总
话题: qt话题: c++话题: event话题: java话题: request
进入Programming版参与讨论
1 (共1页)
s*******g
发帖数: 243
1
如果没有GUI,合适用Qt吗?看了下里面的各种feature挺有用的。特别是我现在要写一
个event based system,qt的signal/slot, state machine看着很好用,比boost好多
了。另外Qt的performance怎么样?正在做的这个系统performance很重要。
M******1
发帖数: 90
2
i say use libev or libevent
qt does not fit what you need
s*******g
发帖数: 243
3
除开event之外呢,像qt的其他一些东西,Qobject model看上去也挺不错的。

【在 M******1 的大作中提到】
: i say use libev or libevent
: qt does not fit what you need

s*******g
发帖数: 243
4
看了下libevent,感觉太low-level了,感觉像是用c写一些server的时候比较适合,我
还是需要high level一点的,像boost signals2那样的。

【在 M******1 的大作中提到】
: i say use libev or libevent
: qt does not fit what you need

b*******s
发帖数: 5216
5
qt就是个界面库,不建议作其它用途,你能讲一下你要写的究竟是什么样一个东西吗

【在 s*******g 的大作中提到】
: 看了下libevent,感觉太low-level了,感觉像是用c写一些server的时候比较适合,我
: 还是需要high level一点的,像boost signals2那样的。

s*******g
发帖数: 243
6
一个后台系统,会从别的系统接到request和data,每秒都有很多,应该是tcp/ip过来
的,但别的系统给了API。然后对这些request,data还有自己的data进行一些逻辑和演
算,内部是event based设计,一些中间步骤调用都取决于发过来的request和一些计算
,最后做成新的request发出去给另外的系统,并且跟据回馈做一些事情。总的来说是
一个realtime的middleware。
前一个版本是用java写的,新的版本要加一些feature,很多复杂的business model要
重新设计,但是event based style还是会保留。另外前一个版本的performance差强人
意。综合model的复杂度和性能的要求,新的准备用c++写。就是这样了。

【在 b*******s 的大作中提到】
: qt就是个界面库,不建议作其它用途,你能讲一下你要写的究竟是什么样一个东西吗
N******K
发帖数: 10202
7
期待java跳大神

【在 s*******g 的大作中提到】
: 一个后台系统,会从别的系统接到request和data,每秒都有很多,应该是tcp/ip过来
: 的,但别的系统给了API。然后对这些request,data还有自己的data进行一些逻辑和演
: 算,内部是event based设计,一些中间步骤调用都取决于发过来的request和一些计算
: ,最后做成新的request发出去给另外的系统,并且跟据回馈做一些事情。总的来说是
: 一个realtime的middleware。
: 前一个版本是用java写的,新的版本要加一些feature,很多复杂的business model要
: 重新设计,但是event based style还是会保留。另外前一个版本的performance差强人
: 意。综合model的复杂度和性能的要求,新的准备用c++写。就是这样了。

s*******g
发帖数: 243
8
真心求建议,不要挖语言坑。。

【在 N******K 的大作中提到】
: 期待java跳大神
s***o
发帖数: 2191
9
这种情况好像是java的强项才对,performance不好的具体原因?是java本身导致的?

【在 s*******g 的大作中提到】
: 真心求建议,不要挖语言坑。。
l*********s
发帖数: 5409
10
据说qt的性能不好,不过再差也比java强,java能及格那qt应该可以。不过state
machine framework/Qobject models神码的和lz的user case似乎全不相干?lz 展开
说说你的思路?
相关主题
请教C++ thread libraryboost的deadline_timer要多脑残才能整出来?
c++ 怎么让一段程序每10秒钟run一次?11下的多线程
想知道家在linux下都有什么c++ socket library狗家又open source一个底层C++ library
进入Programming版参与讨论
p***o
发帖数: 1252
11
听起来可以分布到若干机器上,如果是这样还是java把 ...

【在 s*******g 的大作中提到】
: 真心求建议,不要挖语言坑。。
g*****g
发帖数: 34805
12
You are looking at the wrong solution. Java is perfect for this,
particularly if you have complicate business model. If performance of
previous version is poor, it's probably because it's running on a single
node. Make it stateless and front it with a load balancer is what you want
to do. Again, applications like this should be IO bound if you do it right.
C++ shouldn't make it faster.

【在 s*******g 的大作中提到】
: 一个后台系统,会从别的系统接到request和data,每秒都有很多,应该是tcp/ip过来
: 的,但别的系统给了API。然后对这些request,data还有自己的data进行一些逻辑和演
: 算,内部是event based设计,一些中间步骤调用都取决于发过来的request和一些计算
: ,最后做成新的request发出去给另外的系统,并且跟据回馈做一些事情。总的来说是
: 一个realtime的middleware。
: 前一个版本是用java写的,新的版本要加一些feature,很多复杂的business model要
: 重新设计,但是event based style还是会保留。另外前一个版本的performance差强人
: 意。综合model的复杂度和性能的要求,新的准备用c++写。就是这样了。

s*******g
发帖数: 243
13
很多内部逻辑上的desgin是event driven和state machine。

【在 l*********s 的大作中提到】
: 据说qt的性能不好,不过再差也比java强,java能及格那qt应该可以。不过state
: machine framework/Qobject models神码的和lz的user case似乎全不相干?lz 展开
: 说说你的思路?

a***n
发帖数: 538
14
用boost,asio也可以啊。
s*******g
发帖数: 243
15
可能我context说的不够清楚。毕竟c++开发效率不够高,已经做了一个系统第一版的简
单的c++ replicate,只做了几种特定的request处理。但是每个request处理是独立的
,同样的request,进行了逻辑几乎一样的class/method跳转和运算,c++也比java快好
几倍。
另外已经是用了multi node,不同类型的request会直接发到不同的机器,每秒
available的cpu core的数量比request数量多。问题也不在IO。这个系统不要求
throughput,给我一百万个node也没用。关键是在接到request之后,能在多快的时间
内,能算好新的request发出去。

.

【在 g*****g 的大作中提到】
: You are looking at the wrong solution. Java is perfect for this,
: particularly if you have complicate business model. If performance of
: previous version is poor, it's probably because it's running on a single
: node. Make it stateless and front it with a load balancer is what you want
: to do. Again, applications like this should be IO bound if you do it right.
: C++ shouldn't make it faster.

s*******g
发帖数: 243
16
asio是做network programming的吧。我不需要做这个,接受和发request都有别的系统
给的api。

【在 a***n 的大作中提到】
: 用boost,asio也可以啊。
c****3
发帖数: 10787
17
自己用C写一个不就结了。这种东西能有多复杂,基本的事件通知机制,线程库里都有
了。你就是做个request队列,自己从头写也没有多难。

【在 s*******g 的大作中提到】
: 可能我context说的不够清楚。毕竟c++开发效率不够高,已经做了一个系统第一版的简
: 单的c++ replicate,只做了几种特定的request处理。但是每个request处理是独立的
: ,同样的request,进行了逻辑几乎一样的class/method跳转和运算,c++也比java快好
: 几倍。
: 另外已经是用了multi node,不同类型的request会直接发到不同的机器,每秒
: available的cpu core的数量比request数量多。问题也不在IO。这个系统不要求
: throughput,给我一百万个node也没用。关键是在接到request之后,能在多快的时间
: 内,能算好新的request发出去。
:
: .

s*******g
发帖数: 243
18
也不需要逆天的性能,不然现在java的实现根本没法用了。根据现在做的一些
benchmark和profiling,c++/stl做的有现在java版6-8倍的速度,这还没仔细优化c++
code。最后能达到现在3-5倍就满意了。现在是疑问是用Qt这么复杂的framework会不会
影响performance,会影响多少。尤其Qt看上去有很多特性是runtime的,不是template
那样compile时候就做好的。

【在 s*******g 的大作中提到】
: 可能我context说的不够清楚。毕竟c++开发效率不够高,已经做了一个系统第一版的简
: 单的c++ replicate,只做了几种特定的request处理。但是每个request处理是独立的
: ,同样的request,进行了逻辑几乎一样的class/method跳转和运算,c++也比java快好
: 几倍。
: 另外已经是用了multi node,不同类型的request会直接发到不同的机器,每秒
: available的cpu core的数量比request数量多。问题也不在IO。这个系统不要求
: throughput,给我一百万个node也没用。关键是在接到request之后,能在多快的时间
: 内,能算好新的request发出去。
:
: .

s*******g
发帖数: 243
19
完全不会C。前面有人推荐了libevent,我也觉得太low level了。只能用boost
signals这样的

【在 c****3 的大作中提到】
: 自己用C写一个不就结了。这种东西能有多复杂,基本的事件通知机制,线程库里都有
: 了。你就是做个request队列,自己从头写也没有多难。

c****3
发帖数: 10787
20
你会C++,怎么可能不会C?网上找的Framework,不见得能很适合你的需求。象你这种
不太复杂的,与其东拼西凑,还不如从头自己写一个,最符合需求。

【在 s*******g 的大作中提到】
: 完全不会C。前面有人推荐了libevent,我也觉得太low level了。只能用boost
: signals这样的

相关主题
ZT:C++未来断想which Regular Expression lib in C++ do you prefer?
C++中如何处理日期时间?请推荐好的c++下的matrix库
boost::variant 的问题statistical programming
进入Programming版参与讨论
a***n
发帖数: 538
21
为什么要event啊,用线程循环不行吗?
s*******g
发帖数: 243
22
不会c不是很正常么。经常说那种c programmer把c++当作c写。我根本没正经学过c,也
没用过,去写c估计就会反过来成为把c当c++写的笑料。又不是知道什么是pointer就可
以去写c了。我觉得像boost,qt这种framework还是很成熟的,很多人用,就看能不能符
合自己的需求。

【在 c****3 的大作中提到】
: 你会C++,怎么可能不会C?网上找的Framework,不见得能很适合你的需求。象你这种
: 不太复杂的,与其东拼西凑,还不如从头自己写一个,最符合需求。

s*******g
发帖数: 243
23
我说的event不是那种os级别的event,是高层一点的抽象机制。至于为什么用event,
因为用event based design能decouple很多东西,设计会简单灵活很多。

【在 a***n 的大作中提到】
: 为什么要event啊,用线程循环不行吗?
g*****g
发帖数: 34805
24
That's different, latency critical app is suitable for C/C++.

【在 s*******g 的大作中提到】
: 可能我context说的不够清楚。毕竟c++开发效率不够高,已经做了一个系统第一版的简
: 单的c++ replicate,只做了几种特定的request处理。但是每个request处理是独立的
: ,同样的request,进行了逻辑几乎一样的class/method跳转和运算,c++也比java快好
: 几倍。
: 另外已经是用了multi node,不同类型的request会直接发到不同的机器,每秒
: available的cpu core的数量比request数量多。问题也不在IO。这个系统不要求
: throughput,给我一百万个node也没用。关键是在接到request之后,能在多快的时间
: 内,能算好新的request发出去。
:
: .

b*******s
发帖数: 5216
25
这个其实很适合java做啊,你们对性能有什么具体要求吗?

【在 s*******g 的大作中提到】
: 一个后台系统,会从别的系统接到request和data,每秒都有很多,应该是tcp/ip过来
: 的,但别的系统给了API。然后对这些request,data还有自己的data进行一些逻辑和演
: 算,内部是event based设计,一些中间步骤调用都取决于发过来的request和一些计算
: ,最后做成新的request发出去给另外的系统,并且跟据回馈做一些事情。总的来说是
: 一个realtime的middleware。
: 前一个版本是用java写的,新的版本要加一些feature,很多复杂的business model要
: 重新设计,但是event based style还是会保留。另外前一个版本的performance差强人
: 意。综合model的复杂度和性能的要求,新的准备用c++写。就是这样了。

n*****t
发帖数: 22014
26
就是 performance 不行,所以我觉得这种东西最好直接写

【在 b*******s 的大作中提到】
: 这个其实很适合java做啊,你们对性能有什么具体要求吗?
c****3
发帖数: 10787
27
event说简单点,可以是一个线程,平时在sleep状态,不占用CPU,在等待事件触发。
这个触发机制,既可以用pthread_cond_wait,也可以在特殊端口读socket,等包进来
,也可以用named pipe或者其他IPC。
你又不是要做成库给其他人用,不用搞得面面俱到。自己写这么个机制,比大学
project还简单。

【在 s*******g 的大作中提到】
: 我说的event不是那种os级别的event,是高层一点的抽象机制。至于为什么用event,
: 因为用event based design能decouple很多东西,设计会简单灵活很多。

p*u
发帖数: 2454
28

try ACE, which is well performing and already being used by many trading
firms.

【在 s*******g 的大作中提到】
: 我说的event不是那种os级别的event,是高层一点的抽象机制。至于为什么用event,
: 因为用event based design能decouple很多东西,设计会简单灵活很多。

n****1
发帖数: 1136
29
Boost.Coroutine is like generator/yield in python
l*********s
发帖数: 5409
30
man, ACE sucks

【在 p*u 的大作中提到】
:
: try ACE, which is well performing and already being used by many trading
: firms.

相关主题
C++ 的 exception handlingC++11 大家有用过吗?
网上哪里可以找到好的C++源代码C++11痛并快乐着
求建议:C++的TCP/IP编程库boost vs C++11
进入Programming版参与讨论
L*1
发帖数: 11537
31
You do not have to use UI in order to use Qt. We used Qt for handling xml
parsing and international characters and it worked out pretty well.
p*u
发帖数: 2454
32

it sucks in a way that some students wrote less important parts of code base
, which are of coz not very professional. but ACE event handling system is
very robust and handy; it is being used by many financial firms.

【在 l*********s 的大作中提到】
: man, ACE sucks
h****e
发帖数: 2125
33
also heard some places use POCO.
b*******s
发帖数: 5216
34
说实话,你们的architect口味独特

【在 L*1 的大作中提到】
: You do not have to use UI in order to use Qt. We used Qt for handling xml
: parsing and international characters and it worked out pretty well.

p*****g
发帖数: 445
35
我看玩第一句话,就知道Qt肯定不合适。
求性能,qt不是好选择。

【在 s*******g 的大作中提到】
: 一个后台系统,会从别的系统接到request和data,每秒都有很多,应该是tcp/ip过来
: 的,但别的系统给了API。然后对这些request,data还有自己的data进行一些逻辑和演
: 算,内部是event based设计,一些中间步骤调用都取决于发过来的request和一些计算
: ,最后做成新的request发出去给另外的系统,并且跟据回馈做一些事情。总的来说是
: 一个realtime的middleware。
: 前一个版本是用java写的,新的版本要加一些feature,很多复杂的business model要
: 重新设计,但是event based style还是会保留。另外前一个版本的performance差强人
: 意。综合model的复杂度和性能的要求,新的准备用c++写。就是这样了。

p*****g
发帖数: 445
36
而且如果你非要用qt来干这活,涉及优化和库裁剪,时间足够的话,可以折腾一下。
我也用qt,但是也仅用于UI方面,底层需要效率的东西都拿了别的库来做。
p*u
发帖数: 2454
37

why not share which low level libraries u used with OP?

【在 p*****g 的大作中提到】
: 而且如果你非要用qt来干这活,涉及优化和库裁剪,时间足够的话,可以折腾一下。
: 我也用qt,但是也仅用于UI方面,底层需要效率的东西都拿了别的库来做。

L*1
发帖数: 11537
38
after all the troubles that xercesc gives you, especially those on
internationalization side, it is really a no brainer to choose Qt.

【在 b*******s 的大作中提到】
: 说实话,你们的architect口味独特
c*******u
发帖数: 1269
39
一般比较通用的c++库是boost,效率有保证。signal slot无非就是个大loop,自己写API
加event handler也不难。qt framework 效率还好就是你这样设计太ugly了。

★ 发自iPhone App: ChineseWeb 7.8

【在 s*******g 的大作中提到】
: 如果没有GUI,合适用Qt吗?看了下里面的各种feature挺有用的。特别是我现在要写一
: 个event based system,qt的signal/slot, state machine看着很好用,比boost好多
: 了。另外Qt的performance怎么样?正在做的这个系统performance很重要。

O*******d
发帖数: 20343
40
如果你不做GUI,没有必要用QT。

【在 s*******g 的大作中提到】
: 如果没有GUI,合适用Qt吗?看了下里面的各种feature挺有用的。特别是我现在要写一
: 个event based system,qt的signal/slot, state machine看着很好用,比boost好多
: 了。另外Qt的performance怎么样?正在做的这个系统performance很重要。

相关主题
boost vs C++11c++ 怎么让一段程序每10秒钟run一次?
小白一问:vista下面用什么C编译器?想知道家在linux下都有什么c++ socket library
请教C++ thread libraryboost的deadline_timer要多脑残才能整出来?
进入Programming版参与讨论
O*******d
发帖数: 20343
41
如果你不做GUI,没有必要用QT。

【在 s*******g 的大作中提到】
: 如果没有GUI,合适用Qt吗?看了下里面的各种feature挺有用的。特别是我现在要写一
: 个event based system,qt的signal/slot, state machine看着很好用,比boost好多
: 了。另外Qt的performance怎么样?正在做的这个系统performance很重要。

1 (共1页)
进入Programming版参与讨论
相关主题
请推荐好的c++下的matrix库小白一问:vista下面用什么C编译器?
statistical programming请教C++ thread library
C++ 的 exception handlingc++ 怎么让一段程序每10秒钟run一次?
网上哪里可以找到好的C++源代码想知道家在linux下都有什么c++ socket library
求建议:C++的TCP/IP编程库boost的deadline_timer要多脑残才能整出来?
C++11 大家有用过吗?11下的多线程
C++11痛并快乐着狗家又open source一个底层C++ library
boost vs C++11ZT:C++未来断想
相关话题的讨论汇总
话题: qt话题: c++话题: event话题: java话题: request