由买买提看人间百态

topics

全部话题 - 话题: vert
首页 上页 1 2 3 4 5 6 7 8 9 10 下页 末页 (共10页)
z*******3
发帖数: 13709
1

哈哈哈,真不容易啊,总算稍微有点懂了的样子
话说再superficial能比你说的那两个路边理论superficial?
undertow是一个最新的servlet容器,你是不是不能很准确滴理解这句话?
实际上undertow的结构跟vert.x很像,两个都实现了blocking & non-blocking的功能
两个都基于netty的实现,两个都是red hat的产品
实际上不管是blocking还是non-blocking
最后殊途同归,最后还是需要混用,你可以用nio来对付req
但是最后还是需要blocking的部分,因为总有那么些需求是blocking的
不管你用的是worker还是ejb,其本质都还是传统的thread pool
blocking部分用thread pool做优化就不用说了
而且就算是event,也还是用捆绑cores数量的thread pool
看到了吗?thread pool啊,前面的人都在讨论thread pool
前面都在讨论thread pool,你在说什么?
然后说说undertow和vert.x
undertow和vert.x的差异仅仅是标... 阅读全帖
z****e
发帖数: 54598
2
来自主题: Programming版 - go这么屌?

vert.x因为在建设3,所以tim fox要求撤下
马上就回去了,下半年估计就会放上去了
上面也写出来了,outdated version
spray— Removed at request of maintainer - outdated version
vertx — Removed at request of maintainer - outdated version
两年前vert.x可有指标都是top 1
http://www.techempower.com/benchmarks/#section=data-r8&hw=i7&te
同窗的undertow的理念跟vert.x是一样的
都是那批人做的,看看undertow在什么位置
vert.x应该比undertow更强悍,因为不需要兼容j2ee标准
undertow是j2ee,spring那个,spring本身不是web server
不管这事,放在里面有些不伦不类
z****e
发帖数: 54598
3
来自主题: Programming版 - 给点学习建议吧

学vert.x,你可以接触各种东西,这是server side
如果你想扩展你对于app的知识,建议直接上swift
所以swift + vert.x
你懂了vert.x之后,我觉得什么node, akka之类的,都不难
因为本来很多东西就是互相抄的,等真用了再补足剩下的不迟
这个面就广了,你还能明白rxjava, streaming, nosql这些
vert.x对这些新兴的东西支持非常好,官方直接发布包教你怎么搞
swift的话,用xcode来搞,听说apple秋季打算放出大招
在app上搞广告拦截,如果这个真的搞出来了
android跟ios的差距会进一步拉大
因为本来android的体验就不如ios,如果没有了广告,那后果不堪设想
google几乎不可能限制android上的广告投放,狗就靠这个活着的了
z****e
发帖数: 54598
4

once again
不是网站的后端,是所有东西的后端
包括socket, streaming这些
甚至还有file system
如果你现在还认为这个东西只能做website的话
那就太凹凸了
另外,front end的东西一直都在变,这个很正常
但是back end的东西,20年前的java,10年前的spring
都在被大面积使用中,你没写过企业软件,这个是硬伤
java的大部分东西都是一层一层往上累积
跟front end三十年河东三十年河西不是一回事
back end从java开始,每次新潮流涌现
都会从中抽取几个做得特别好的留下来
然后寻找其他部分的互补,目前看
back end几乎所有部分都被很好滴填补上了
要说还有什么没有,那就是各个domain自身的scripts还比较缺乏
比如r,很多领域都缺少r这样的脚本
而将来jvm和vert.x统一backend之后
需要做的就是在这个基础之上,作出各种脚本引擎来
实际上vert.x已经朝着这个目标大幅迈进了
os->jvm->vert.x->scripts,这个就是一个进步
跟website的一天到晚就做http还有web... 阅读全帖
z****e
发帖数: 54598
5

vert.x首先要有netty
vert.x的tim fox的导师就是netty的那个韩国人trustin lee
就是它跳槽到red hat之后,在trustin指导下作出的vert.x
10年前连netty都不存在,trustin刚毕业不过两年
去哪里来的vert.x?
w***g
发帖数: 5958
6
来自主题: Programming版 - 发一个HTTP micro benchmark
我看赵策这么desperate,顺便帮他做下广告。我自己感兴趣的是DPDK。
这个benchmark里DPDK 服务器 + 传统客户端能做到192K req/s,
(我重复出来是210K req/s)
比C++/vert.x传统服务器高差不多一倍。但是其实DPDK服务器是没用足的,
客户端是bottleneck。如果用多台客户机,DPDK吞吐量能进一步提高。
我在相同的硬件上试了DPDK 服务器 + DPDK 客户端,吞吐量能做到
500K req/s。也就是vert.x的5.5倍。这个5.5倍只是HTTP短消息的开销,
如果业务逻辑加上去,速度提升就不会那么明显。vert.x相对别的
框架的提高也是同理。一般app应该连vert.x的性能都不需要的。
l**********n
发帖数: 8443
7
【 以下文字转载自 Military 讨论区 】
发信人: zhaoce (米高蜥蜴), 信区: Military
标 题: java之后,人类就已经不再意计算机语言了
发信站: BBS 未名空间站 (Mon Jan 25 19:13:08 2016, 美东)
你可以说计算机语言已死
或者说是一个夕阳产业了
就是人类已经发现了这个领域的最优解
就不再继续折腾了,你只需要学会人类定义好的规则就好了
计算机语言这个领域已经没有什么难题需要人类去解决了
java之前,人们之所以搞计算机语言
是因为觉得机器的对话方式,跟人类对话方式有比较大的差异
所以人类可能看不懂机器在执行什么,比如01001011110101010
给你这么一串,你滴不懂这个是啥意思
但是java之后,基本上人能看懂了
所以满足了这个目的之后,还在折腾计算机语言的
不是脑子有屎就是目光短浅,人家解决过的问题
你解决了干嘛?就犹如数学上的某个猜想,已经得到了证明
你再证明一遍?有用吗?你就算证明出来了,人家多半也会说你是抄的
所以计算机语言这个level,已经没有什么可以继续搞的了
剩下无非继续傻瓜化,做成脚本或者置标语言... 阅读全帖
z****e
发帖数: 54598
8
来自主题: Programming版 - coroutine comes to Java - Project Loom

vert.x过去两年大发展啊,早已今非昔比了
这两年错过vert.x的是一个巨大的损失,不是我说
准备技术输出了,然后噱头就是
比spring mvc快几十倍
生态比go好几十倍
市场买不买这个账,不知道,管他呢,反正就是宣传
至于kotlin对vert.x的促进作用,看上面讲的coroutine部分
这个中国人贡献的代码已经merge进官方库了
马上就release了,就能用了
3.5的新增功能包括
kotlin的coroutine原生支持
rxjava 2.0的升级
jdbc client的callback的简化
强烈建议马上升级
ceylon贡献给了eclipse之后,也会加入coroutine
java这个还需要时间
现在项目中,java, kotlin, groovy都有,因为idea社区版加入了scala的滋持
所以准备上scala了,至于js本来就有,但是gradle里面一般都放在resources目录下
最近搞了下ruby,感觉挺好玩的,拿ruby和另外一个中国人写的脚本到时候来做演示
展示一下这个随便选一个脚本就能用来开发项目是怎样一番光景
太有趣了
vert.x最... 阅读全帖
t******2
发帖数: 2265
9
来自主题: _Auto_Fans版 - 跳了2012 MUSTANG V6
GT350,0-60,3.7s,已经put the power down to wheel了,以前几代的老问题不能
carryover吧?要允许人家进步嘛。
再看看下面这个非专业马饭的数据,不进3s才是没谱的事吧。这还是没瘦身,没进化之
前的数据。
CMC Top 1/4 Mile ET List.
1. bob@kurganmotorsports - 7.72 @ 179.83 (1.227) 1986 GT, H, C, I, SC, X(364
) Powerglide
2. DynotuneMP - 7.754 @ 179.42 (1.216) 1988 GT, H, C, I, SC, X(352)
powerglide
1. vnmpind - 8.01@176 (1.41) 2003 cobra, H, C, I, T, X(363) Powerglide
2. Crazy Eddie - 8.75 @ 152 (1.27) 91 Notch, H, C, I, SC, X(304) C4
3. enginerd - 8.85 @ 155 (1.31) 93 LX, H,... 阅读全帖
w*******y
发帖数: 60932
10
Glyde.com:
http://glyde.com/stores/daily-deals#!display_as=2&vert=games&page=0
#!display_as=2&vert=games&page=0" rel="nofollow" target="_blank" onclick="_
gaq.push(['_trackEvent', 'thread', 'click', '2317657 - newused-video-game-
deals-glydecom-fifa-11-ps3-43-medal-of-honor-33-super-mario-brothers-wii-21'
]);">Glyde.com [Glyde.com:
http://glyde.com/stores/daily-deals#!display_as=2&vert=games&page=0
#!display_as=2&vert=games&page=0" rel="nofollow" target="_blank" onclick="_
gaq.push(['_trackEvent... 阅读全帖
z****e
发帖数: 54598
11
早就有定论了嘛
c/os -> jvm/java -> vert.x等平台化轮子,谁用matlab啊?
工业界没有人把这些东西当回事,unity也没啥用,3d游戏现在半死不活的
大量游戏公司倒闭裁员,连暴雪都不行了
现在都回到2d中去,因为2d游戏画面精美,适合艺术人员发挥
3d游戏麻痹的一个美工,要价上万,还做得跟屎一样,你认真看一下3d的美工
要做好,那个难度是2d的几倍都不止,小日本靠着2d的动画大行其道
美帝早就开始搞3d动画了,结果呢?你现在看过几部市场上反映好的3d动画片?
皮克斯那个是美国人自吹自擂的,真正动画产业还是看日本
所以短时间内,还是vert.x等轮子为王
vert.x之上,你看一下maven, npm, gem等repository
mvn现在有轮子接近120w,是目前为止数量最大的repo
java的确也只是阶段性产品,但是计算机语言到了java这个level,基本上就到头了
剩下的看轮子的,不是语言
z****e
发帖数: 54598
12
来自主题: Military版 - 感觉python的前途堪忧

codegen是吧?
这个jvm和vert.x都有啊
jvm可以直接做一个script engine出来
你想怎么定义就怎么定义脚本语法
懂了没?
其次vert.x的codegen可以根据你定义的脚本
套入该框架,使得你的脚本能够用vert.x的架构实现分布式和并行计算
z****e
发帖数: 54598
13
就只有靠vert.x这种东西
或者类似的架构
否则没戏
其它人说得没错,java的复杂性来自多线程和并发
其实java和jvm解决了大部分low level的问题
就剩下并发了,这个由vert.x解决了
并且暴露出各种脚本接口来了
所以如果你想在效率上跟java竞争
只写脚本的话,你就应该了解vert.x
否则没戏,你自己写个单线程脚本,现在动不动都是几个cores的cpu
你跑单线程???您这是来逗我玩的吧?
各位索南,你们好歹也是高智商phd
这点基础知识还是要有,杀不杀老鼠,不重要
这点知识并不难以理解,文科生都懂
z****e
发帖数: 54598
14
来自主题: JobHunting版 - Node+Rest=马工神器?
跟你们boss说,用vert.x可以明显改善并提升效率并且可以兼容现有代码
一般资本家眼睛都会放光,因为有经济利益在里面
搞懂了vert.x你基本上nodejs和web service都懂了
还有message service这些也都会了,这几个都在这里面
vert.x的js部分就是照搬node.js的,这是一个超集
学习要主动一点,不可能什么都是别人教你的,绝大多数都是自己弄的
与其在这里灌水,不如自己动手做几个试验,把你想跑的跑起来
剩下的就是面试时候跟对方扯蛋了,别人也不可能去验证你是不是真用了这些产品
你说你用过node.js,他有办法证伪么?当然别把概念性的东西说错

前台
z****e
发帖数: 54598
15
如果是backend的话
java -> tomcat/jdbc/db(sql) -> spring/hibernate -> nosql/spark/flink/lucene
-> vert.x/netty/core java
差不多酱紫,虽然最后一步比倒数第二步数学要容易点,但是更迟出来
所以如果是学习的话,那就把最后两个颠倒一下
到了spark之后,就明显感觉数学要求陡然升高,高等数学就开始来了
第一步就是线性代数
一般的web也就是到tomcat这个level吧
很多full stack其实就是front end
无非php -> ror -> node酱紫一路过来
除了web还是web,无非换个写法而已,没啥大区别
真的full stack应该从swift -> java,像搞tableau/palantir一样搞法
那才叫真正的full stack,如果搞这种的话,java就直接跳到最后一步了
至少上netty了,现在可以上vert.x
netty作者是韩国人,也是游戏爱好者,本来初衷就是给网游用的
netty那几个core developers,基本上都在各个大公司做顾问... 阅读全帖
h*d
发帖数: 19309
16
你自己扯的你都不记得了? cql那货返回点数据也就罢了,处理数据还是算了。

http://www.mitbbs.com/article_t/JobHunting/33063511.html
发信人: zhaoce (米高蜥蜴), 信区: JobHunting
标 题: Re: full stack track 和 backend track 哪个更有前途?
发信站: BBS 未名空间站 (Thu Oct 1 07:59:32 2015, 美东)
如果是backend的话
java -> tomcat/jdbc/db(sql) -> spring/hibernate -> nosql/spark/flink/lucene
-> vert.x/netty/core java
差不多酱紫,虽然最后一步比倒数第二步数学要容易点,但是更迟出来
所以如果是学习的话,那就把最后两个颠倒一下
到了spark之后,就明显感觉数学要求陡然升高,高等数学就开始来了
第一步就是线性代数
一般的web也就是到tomcat这个level吧
很多full stack其实就是front end
无非php ->... 阅读全帖
z****e
发帖数: 54598
17
来自主题: JobHunting版 - 生活真是难啊
1)恭喜,你快找到工作了,如果运气好的话,这个就过了
虽然回答得还是不那么顺畅,但是基本上属于可以要的程度
虽然你自己感觉不好,但是回答得马马虎虎过得去吧
2)swjtuer说得是对的,你的问题在于,除了你自己做过的
其他不知道,也不懂得吹,所以回答得磕磕巴巴
要举一反三嘛,不要瞎子摸象嘛,java世界这么大
你不可能所有产品都用过去,你要懂得归类嘛
没用过,你可以猜嘛,举个例子
你用过tomcat,那么所有的servlet容器都是一回事了
这一大类有tomcat, jetty, resin, undertow, weblogic webserver
websphere webserver etc.还有很多
所以当其他名词出现在你面前的时候,你要懂得联系起来
题是死的,人是活的嘛
3)具体到nio,其实我昨天已经给了你一个framework了
vert.x啊,你这个人脑子就这么硬,给你说过的东西,一点也不看
跟谁拗呢?nio -> netty -> vert.x就是一个从底层到相对高层的三个东西
netty和vert.x这两个项目有一个核心程序员,就在apple的icloud干
德国人... 阅读全帖
z****e
发帖数: 54598
18

hadoop有价值的部分主要是hdfs
用vert.x之后,连这个都可以省掉其实
我直接用vert.x的file system,自己写replica这些,也没多难
要不是大学那边一定要用hadoop,因为他们买了cloudera的服务
不用浪费,所以说给我们用不收钱,我未必会主张用什么hadoop呢
data warehouse的hype居多
其实hadoop本身也是一个hype,大多数人只是觉得这个hot
就无脑上了,etl用一个scheduler就好了,如果非要streaming的话
用rxjava做一个稳定的连接,但是一般没有必要
vert.x的setPeriodic方法足以替代一般的scheduler
d*******r
发帖数: 3299
19
请教板上 Java 大牛们,JAX Innovation Awards 在 Java community 影响有多大?
刚刚看到这个:
http://jax.de/awards2014/
list Most Innovative Java Technology: Vert.x
list Most Innovative Open Technology: Docker
list Most Innovative Open Tech Business: Hazelcast
list Special Jury Award: JDK8
Vert.x 和 Hazelcast 本来就是一起的,所以 Vert.x 是大赢家的样子
最好玩的居然是 Go 的 Docker 也能来客串,得个奖
z****e
发帖数: 54598
20
来自主题: Java版 - Java 做网站
jboss如果你只是用来做网站,会显得比较重
因为jboss重心不是web server那些
而是背后的ejb container,hibernate这些东西
lightweight的当然是vert.x顶用了,而且异步的也快
vert.x看官方文档就好了
http://www.openshift.com/developers/vertx
不过vert.x搞website会比较折腾
tomcat吧,加一个spring mvc就好了,象古德霸说的那样
g*****g
发帖数: 34805
21
没看出来,你给讲讲?
Dummy database constrained benchmarks favors 3x vert.x over Node.js.
As for 'requests per second' it's 3.5x faster (7x using both processor cores
, but this is unfair).
Vert.x sent more data down the tubes, I suppose it's caused by different '
Date' header formatting (it uses Rhino's NativeDate instead of JavaScript's
Date) . It also prints slightly longer 'X-Response-Timeout' (e.g. 13.0
instead of 13). I might look into it in the future. I tried to even out
basic benchmarks by adding... 阅读全帖
z****e
发帖数: 54598
22
来自主题: Programming版 - clojure 做数据分析
我一直都在寻找一种简易的系统集成的方法
让这些脚本语言的程序员能够参与到java世界里面来
尤其是big data这一波
目前看vert.x最好
其他方法
eai太麻烦,太重量级,非专业人士不行
jvm的script engine还没做出来,鬼知道做成什么样子
反正至少没火起来,文档支持太少
所以就剩下vert.x
如果你有兴趣,针对vert.x的language扩展,做一个r的扩展的话
可能卖点会有很多
当然其本质是写一个jvm上的r引擎
z*******3
发帖数: 13709
23
来自主题: Programming版 - zhaoce老师,求教如何转行搞java?
那vert.x就是你的下一步
vert.x的各种模型就是j2ee的模型的简化版
我怎么看怎么觉得象一个简化的app server
vert.x架起了一座python这些语言跟java衔接的桥梁
过去之后,剩下的你怎么搞都随便了
z****e
发帖数: 54598
24
vert.x的模式值得学习
它只做底层的封装
后续的发展通过pkg来做
这个就很像java和eclipse本身
java只做一些很基本的功能,然后爆第三方类库扩展
谁需要自己去下去,不同公司不同群体要求是不一样的
eclipse也是如此,只做最基本的标准化开发组件
其它的,自己去下plugins
vert.x现在也只做最基本的协议封装
其它的通过扩展模块来实现
现在就是hadoop目前还又大又全
看什么时候persistence能出现一个类似java,eclipse和vert.x的东西的话
就很有可能成功,目前为止,所有的persistence产品都是朝着大而全方向发展
这种模式到最后会拖垮自身,就跟现在的db一样
其实windows也是这种模式,恨不得什么都塞给你
而大多数人对其中99%的功能是不需要的
结果启动爆慢,然后学习门槛居高不下,最后所有人都放弃了,前功尽弃
被下一个简洁产品所取代
z****e
发帖数: 54598
25
来自主题: Programming版 - 二爷说的node beats Ruby其实很清楚啊
i think u should try vert.rb
if the code lines are 10 times more than node.js
then come to tim the creator of vert.x
and post following statement: vert.x sucks
g*****g
发帖数: 34805
26
来自主题: Programming版 - 蜥蜴和好虫掐起来了
蜥蜴错了。统一多语言的不是vert.x,是JVM。JVM包括了Rhino,从Native的角度对js
的支持比其他脚本语言好。
但你也错了,vert.x虽然对已经习惯多线程编程的java程序员吸引力不大。但对于node
.js社区的js程序员有很大吸引力。特别是等明年Nashorn JS engine跟着Java 8
release,Nashorn据说性能至少跟v8平级。到时候无论是node.jar,还是vert.x,都将
是node.js的有力竞争平台。node.js程序员不但可以继续写js,继续得到高性能(Rhino
不用JIT很慢),还可以获得jvm上的巨大类库,这无疑是很有吸引力的。

Python
z****e
发帖数: 54598
27
来自主题: Programming版 - node.js的unavailable
那篇文章感觉是给node.js mt什么东西做广告用的
估计是cluster的一种什么叉叉,不太了解这里面有啥玄机
但是基本上都同意,vert.x is faster than node.js
这句话也在文章中出现了n次,v8的动态类型明显拖慢了它的效率
这个只能依赖dartvm去搞定了,不过dart打算自己搞node.js做的事了
dart网页更新得很快,vert.x在过去一个月commit数量也创造了历史高峰
node.js前景很是堪忧
Overall, Vert.X is faster than Node.JS as suggested by others before.
d*******r
发帖数: 3299
28
来自主题: Programming版 - Node.js arrives for the JVM
http://nodyn.io/compatibility/
Cluster
Node.js reference http://nodejs.org/api/cluster.html
Clustering is handled for now through vert.x builtin clustering, which
itself uses hazelcast for the implementation. Vert.x does not yet expose
clustering data or an API.
以前看 vert.x 的时候看到过这个 dependence: Hazelcast
http://www.hazelcast.com/
难道就是自带 cluster 模式的 memory DB ? 那 Redis(cluster) or memcached 都不
用搞了!?
z****e
发帖数: 54598
29
这个真的是随便你用什么都可以
ws简化的就是一个简单的http请求和response
tomcat那个估计不是servlet而是jax-rs
如果你嫌ws太麻烦的话,你不用也没什么
就用最简单的http请求就好了,gae我成功过
但是动不动就给休眠,我现在用mimisoft推荐的digitalocean.com
$5一个月,不算贵,域名用internetbs.net,公孙大神推荐的
具体的服务器我不用tomcat,用vert.x,啥语言都支持
看了一些报告,韩国构架师领军的netty在cloud平台上,比如ec2表现最好
而vert.x是基于netty的,所以理论上表现不差,但是这个需要你自己折腾
这是netty的网站:
http://netty.io/
vert.x:
http://vertx.io/
p*****2
发帖数: 21240
30
来自主题: Programming版 - 请java大牛谈谈大并发的解决方案
刚才想了一下,现在大兵法的主要解决方案就是异步,这也是为什么Node这么火的原因
,还有新兴的Go语言,老树回春的Erlang。那么Java上边情况如何呢。
我的理解基本上最下边是NIO, 然后中间有一层Netty,上边有play,reactor,vert.x。
play本身是一个模仿rails的mvc框架。现在的趋势越来越不mvc了,所以前途有限。
play下边的akka很强大,但是即使coltzhao这样的scala大牛也认为太复杂了,可见流
行程度不会很大
reactor本身是想做一个framework,并不是直接可以创建app的,并且由于很新,
production还不可用。
vert.x是zhaoce大牛最中意的,算是完全copy了node的创意,并且解决了scale和
coordination的问题。当然在web server上,goodbug大牛早说过了,request都是独立
的,所以node完全没有压力。而vert.x最大的问题是不能实现纯异步,所以还必须实用
阻碍的线程,这样就造成了瓶颈,不利于大兵法。
所以,感觉JVM上确实还没有一个比较完美的大兵法解决方案。这也... 阅读全帖
z****e
发帖数: 54598
31
来自主题: Programming版 - dart写web ui实在是太爽了
dart自带有http request和json的parse这些
直接发送http reqeust到vert.x上就好了
vert.x天然就是一个ws server
写一个wrapper,弄三个verticle/module
一个用来监听8080端口,接收来自dart的ui请求
一个用来对付cassandra/couchdb,从nosql里面收集数据
一个用来对付spark,收集完的数据交给spark,调用mllib pkg做处理
最后反馈结果给dart,dart再把结果plot到界面上去
核心还是vert.x,这种简单的app可以同时做web和android版
等搞定后,swift出来摸熟了之后,再上ios版
dart最让我喜欢的就是html和css还有dart脚本分离
尤其是html和dart本身分离,不象以前凑在一起,难看死了
用dart我觉得不用angular也没啥大不了的
z****e
发帖数: 54598
32
目前vert.x已经支持了8种语言
java
javascript(rhino)
python(jython)
ruby(jruby)
groovy
scala
clojure
ceylon
一个建议
如果你会一种脚本
倒是可以跟tim fox提出去implement这个脚本在vert.x上
比如php,lua
php已经有人在做了
lua可以用luaj,然后集成的部分交给你了
这样就有机会进入vert.x的core team
写在简历上也好看
当然这是左逼的贡献精神,完全志愿的原则
一个建议而已
z****e
发帖数: 54598
33
不过vert.x最让人讨厌的就是plugin做得还不够好
要对付eclipse,比如你要把vert.x的main找到
然后告诉eclipse,执行这个main酱紫
debug起来会有些小麻烦,很多时候还是要用vi来折腾
不过因为vert.x启动本身也快,不像tomcat,spring那些启动比较慢
所以也还能接受
d*******r
发帖数: 3299
34
来自主题: Programming版 - Pivotal Drops Groovy and Grails
就知道你会推 vert.x
vert.x 对于老 Java 用户搞着顺手吗... 我看都是在用异步
还有, vert.x + ORM_over_SQL 这种有成熟方案吗
用 tomcat 那些, Spring还是要研究吧?
z*******3
发帖数: 13709
35
来自主题: Programming版 - Pivotal Drops Groovy and Grails

ror在设计上有它的好处
groovy并不负责搞spring和hibernate的那些东西
这些framework和语言各有各的用处
并不是mutually exclusive
spring主要负责di和ioc,hibernate负责orm
groovy则主要是负责简化逻辑代码
你用groovy写各种crud很快
vert.x里面所有例子,groovy的代码是最简短的
超过其他所有脚本语言,比js还有ruby都简短
这个你如果用vert.x的话,可以直接对比,一下就看出来了
而简化代码跟di还有orm并不冲突啊
所谓grails就把这些东西汇总起来的这么一个框架
实际上所有的web server都是好几个东西的汇总
比如html template,比如session management,比如web listener etc.
讲一个东西容易一堆东西一起上,乱七八糟
比如struts以前就用了那个啥freemarker
搞vert.x就把这些都分开,你自己搭配,任何一个组件出了问题
你就去看这部分是咋回事,而不是瞎子摸象
啊,好大一个概念,你都不懂里面到底咋回事
虽然最后你还是得挨个... 阅读全帖
z*******3
发帖数: 13709
36
来自主题: Programming版 - Pivotal Drops Groovy and Grails

vert.x天然就支持websocket
http,tcp,udp这些常见的网络协议vert.x都支持
还有jca, jms这些
自己翻翻manual吧,到处都是
http://vertx.io/docs/vertx-core/groovy/
WebSockets are a web technology that allows a full duplex socket-like
connection between HTTP servers and HTTP clients (typically browsers).
vert.x的api对新生事物的兼容性做得很好
各种features都围绕着新生的工具展开
下一步重点是streaming api
z*******3
发帖数: 13709
37
来自主题: Programming版 - Pivotal Drops Groovy and Grails

其实不难,typesafe那帮人故意弄复杂了
估计好骗钱吧,it很多东西都故意弄得很复杂,便于收取咨询费
akka的基本单位跟vert.x一样
vert.x官方文档里面也说了,就是actor model
但是akka的是树状结构,一个接一个,就像tree node一样
vert.x是bus结构,所有的communication通过event bus完成
就更简单一点,然后各种接口什么也都比较完整
你可以随心所欲自由搭配和组合,这种非侵入式的设计比较讨喜
z****e
发帖数: 54598
38
来自主题: Programming版 - 设计一个大计算量的并行架构
既然“建模要周期性的重复进行”
那这个怎么会对latency比较高呢?
你需要的应该只是一个异步构架吧?
需要能够迅速响应你的请求,而非长时间石沉大海一样的无影无踪
能够告诉你,它在working
vert.x配合rxjava应该够你用了
akka我反正当时用得很痛苦
scala一直给我感觉不是那么容易搞
另外你的数学模型处理本身也需要一个接口
还有楼上说的数据传输可能会成为瓶颈
vert.x的设计可以当一个司令部用
最近有个年代古老的卡通寄生兽有看不?
那个卡通大boss就是一个寄生兽头部控制四肢寄生兽的一个东西
如果是我来做,我就用vert.x当头
然后控制其他部位,每个部位写一个mod,然后deploy
z****e
发帖数: 54598
39
STABLE RELEASE 0.31.1
老样子,把版本号好好观赏下,第一个数字是啥?
vert.x的plugin太难做了
因为兼容一堆语言,clj的plugin都没搞好
vert.x只能继续等下去
不过如果坚持用 java的话,vert.x倒是很容易搞定
z****e
发帖数: 54598
40
verticle是抽象的概念,module是具体的文件
verticle是每次运行的时候,vert.x保证每一个verticle的instance会被单个thread所
访问
不会被多个thread同时访问,而module是你把文件打成的包叫做module
所以可以把多个verticle放到同一个module下面去
但是vert.x运行的时候,还是会将每一个verticle的instance安排给一个具体的thread
vert.x默认是你有多少个core,就运行多少个threads
这样你就不需要像node一样启动多个process了
这些threads之间的通信通过bus来通信
z****e
发帖数: 54598
41
系统什么时候并行你不需要操心
反正你的每一个verticle对象只会被一个thread所执行,在同一个时间点内
不会互相干扰,所以你不用去管vert.x什么时候做并行操作,什么时候不做
这个dispatch由vert.x来搞
所以哪怕你启动的只有一个verticle,只监听一个port
也还是会有多个threads来调用这个verticle的instances,java里面就是内存对象
然后当并发量大的时候,thread就会多起来
然后不同的threads如果调用同一个verticle
那么他们会分别持有这个verticle的不同instances
每一个thread分配一个instance酱紫
你就当你写的verticle是运行在单线程环境中就好了,并行的事,vert.x会帮你搞定
当然一个重要前提就是,你不能直接share object between threads
如果需要在不同threads中分享数据,则你需要看用bus
另外我记得他们好像提供了一个内存共享的map好像,你要自己查查
z****e
发帖数: 54598
42
用vert.x跟其他一样,切记部署时候一台虚拟机/真实机器
就启动一次vert.x的instance就好了
只有单线程的process instance需要启动多次
其他无论是fp的akka, play还是oop的ejb, spring这些
都没有说一个虚拟机启动多个instances的道理
一般就是一个虚拟机启动一个instance,搞定
node是奇芭的存在
然后一般多线程的框架,都会自动管理threads
让你从无聊而又繁琐的并发冲突中摆脱出来
写代码就不要各种lock, synchronised这些鸟
当然为了实现这个目的,会有这样那样的要求
比如要immutable,vert.x是所有多线程框架中,要求最低的一个
其他要求都很恶心
z****e
发帖数: 54598
43
是的,你的理解非常准确
其实所有的多线程框架都提供了一种机制解决冲突问题
因为lock&synchronised的确是很难搞
让用户不再需要去写这些东西是这些框架的目的
vert.x除了worker以外的verticle都是异步的,或者说都需要做成异步的
同步会block线程
ejb当初设计时候没有考虑到异步的情况
因为毕竟年代已经有些久远了,所以大多数操作都还是同步的
但是以后不知道,以后这个情况可能会发生改变
另外一个request未必对应一个thread,看设计
到了具体的instance,可能是多个对应一个,或者一个request调用多个instance
但是在同一个时间点内,一个线程只会调用一个instance
保证其他threads不会过来搞
异步的设计跟同步的架构设计有明显区别,同步是一个request启动一个thread
但是异步不是,异步是有多少个cpu的core,启动多少个thread
然后把event pool里面的events分配给这些threads
这个是vert.x,node是只有一个thread去轮询event pool
所以会启动多process,其他框... 阅读全帖
z****e
发帖数: 54598
44
来自主题: Programming版 - 我对为什么使用FP的理解 (补)
昨晚给你的那个链接里面就说了一个例子
恰好那个例子就是游戏
vert.x用来对付游戏没有问题,会很容易
恰好我就在用vert.x来对付类似的场景
但是node会很苦逼,多线程这些手段还是有用的
至于这占多少百分比,那就不知道了
而且vert简单的场景也很容易,没觉得比node复杂
所以这个余地我还是留着了
z****e
发帖数: 54598
45

为0
游戏的backend不能一概而论
要根据需要选择网络协议
一般restful web service都是http
但是游戏一般是tcp or udp
而且udp比较多,所以你要自己处理丢包以及验证connection的事宜
所以backend不太可能是jax-rs
除非你只是用来存一下数据,那这个也许还可以用jax-rs
django亦然,这两个都差不多只能支持http协议
用vert.x就可以支持tcp,udp,http,web socket等等,都很容易搞
而且可以随便启thread,对于卡牌类游戏非常match
但是vert.x也只能做到卡牌,如果是再即时一点的
就需要自己控制thread了,thread pool去搞了
要求低于卡牌的,vert.x都可以轻松搞掂
数据库无所谓你用什么,用什么都会有问题,但是流量小都没有问题
postgresql都可以,zlike用的是mongo
这不是在前面问怎么对付mongo的问题嘛
z****e
发帖数: 54598
46
来自主题: Programming版 - go也是三种paradigm混合的语言

跟groovy一比,你们都是渣
vert.x乃神器也
说回vert.x,现在vert.x都放弃了什么ide support了
直接在verticle里面放main函数和做测试
如果对j2ee了解的话,今天很多语言做的事
其实就是当年ejb在做的事,没啥太大区别
一样的
z****e
发帖数: 54598
47
来自主题: Programming版 - go也是三种paradigm混合的语言

不映射,用spring直接干掉static
就是ejb2,ejb2很开心滴定义了一堆interface和functions,结果没人用
所以今天很多语言搞的东西都是被java证明过有问题的
spring这么古老的一个东西,居然还能在理念上横扫各个语言的eco
真的是很好笑啊,难怪vert.x那边要求加入spring和di的呼声很高
但是其他语言比如python, ruby等的作者都表示不太支持
因为其他语言没有这个东西,所以只能用比较落后的方式搞
我个人的初步想法是等vert.x3出来之后,再在vert.x上的基础之上做java的扩展
其他语言还是用ejb的方式去搞吧
z****e
发帖数: 54598
48
来自主题: Programming版 - wdong你可以把event和thread拆开来
你敲了那么多为啥删了?
我就是这么做的
建模还是需要thread(vert.x的worker)
但是接收命令,用event(vert.x的一般verticle)
回合制游戏本身不就是一个接收命令
然后启动thread去轮询的一个过程吗?
哪怕是在客户端都是这样写的
我重用了客户端的model代码
客户端用mvc,服务器端用vert.x来接受命令
然后寄存到map里面去,命令本身是immutable的
然后每一局启动一个thread,当然这个thread已经建好模了
然后轮训map,然后执行命令后广播出去
z****e
发帖数: 54598
49
来自主题: Programming版 - NodeJS 作者的最新作品
worker js根本没戏
js本质上就不支持多线程
所以不得不找其他语言给顶上
要么c要么go,当然是go好
从这点上说,node跟vert.x的设计差了两个档次
vert.x就没这种破事,轻轻松松搞定worker
现在worker都不算啥了,vert.x跑去搞spring那种beans了
z****e
发帖数: 54598
50
来自主题: Programming版 - 学scala从akka入手就可以了
也是糟粕
vert.x的设计比akka强很多
网络上到处都有vert.x vs akka, vert.x vs node.js
随便看几个就有ideas了
首页 上页 1 2 3 4 5 6 7 8 9 10 下页 末页 (共10页)