d********g 发帖数: 10550 | 1 你这个前后端分级太绝对。对server side MVC来说,后端可以认为是web server(或
者叫web app server)。做大的架构都不止这么简单,处理business logic的这块会独
立出来做scaling,也就成了你提到的app server
实际上Node可以简化的一个地方是真正的web server也就是Apache、Nginx,因为它直
接就可以处理,不需要proxy。当然Tornado也是这样设计的裸跑。至于是否裸跑,不同
项目的需求不一样,会兼顾性能和feature,Node前面架一个web server也是常见的 |
|
d********g 发帖数: 10550 | 2 这个你得问专业DevOps才行,我们招了快半年了。我知道常见的boto、puppet、fabric
这些
supervisor用的人比较多,不过这个东西的web gui有个bug,在reverse proxy下对
https支持很烂,不知道多少年的老代码了,只能在Apache/Nginx这里加规则来fix
cron一般没必要替换,倒是有个APScheduler。*nix不可避免要bash,纯Python DevOps
不现实
在
, |
|
|
n****1 发帖数: 1136 | 4 websocket不就一个类似于端口转发的东西吗? 连apace/nginx这种静态服务器都能做
到。
你提的东西越来越底层, 直接把node下降到静态服务器的地步, 离后端服务越来越远
了。 |
|
v*****r 发帖数: 2325 | 5 idea is important, no doubt.
but you can never expect to hit a home run without trying.
if never had much experience develop web sites, or really understand how a
web site interacting with users, ur chance to build a good web site is very
low.
not just build a web site, there are coders also hit home runs with widely
used softare, such as node, nginx, clojure, storm, linux. if many people use
your products and need ur support, you hit home too. |
|
v*****r 发帖数: 2325 | 6 agree. keep up with wheels takes a lot of time, especially right now there
are so many wheels.
maybe strike a balance between fearless critic and humbly reuse other people
wheels.
innovate -- innovative product/services/platforms(google search, wechat, etc
), or innovative software tools(big ones such as linux,andriod, smaller ones
such as nginx,clojure)
Teacherwei has his own product and should be able to provides some insights |
|
v*****r 发帖数: 2325 | 7 agree. to become an expert at solving a specific problem won't take long,
but it takes unique quality & maybe luck to find an interesting problem and
successfully solve it.
many 内行 might have never thought about P2P.
ryan dahl, creator of node.js, didn't choose to rely on netty.
Igor Sysoev, creator of nginx, didn't choose to improve upon apache.
we can not deny the creators's drive to create something new.
elon musk, programmer and college physics background,with only success track
at programmi... 阅读全帖 |
|
|
m******t 发帖数: 635 | 9 mono可以跑asp.net的,比较麻烦就是了,稳定性不知道。我有个C#写的webservice在
DigitalOcean上跑了快一年了,也是给iOS app 服务用的。用的是ServiceStack,前面
用nginx ssl proxy一下,在debian下跑的,流量很小就是了。 |
|
g*****g 发帖数: 34805 | 10 你就别撑了, Robert提了几点。一个是要从 driver开始写,一个是根据应用不同对
network stack 选择性实现,或者部分支持,以达最简目的。还有一个就是没有任何开
源可靠的user space TCP/IP实现,所以你只能自己写。
nginx支持 http, 因为 http 本来就是个应用层协议,也不会换个网卡就不能用。撑也
没有这么撑的,你不服从驱动到 TCP实现了再来。我不说了,你这思路就是错了,一个
堆机器就能解决的问题,要等别人的研究成果。要是研究不出来,你就不做了? |
|
n****1 发帖数: 1136 | 11 redhat openshift,支持linux平台下的所有程序,甚至是静态的apache/nginx.最重要
是免费 |
|
w***g 发帖数: 5958 | 12 我觉得javascript在后台成不成主要是event vs threading的问题。别的语言没这个问
题,一般两个都是通过库来支持的。但是javascript跟event是绑定的(理解不对请指
正)。
event vs threading是系统领域长盛不衰的话题,即使以后c++和java都不在了,event
vs threading可能都还是在的。这两个谁是谁非跟当时的硬件支持很有关系。我觉得
目前盛行的event更有效这个结论是在前multi-core时代得出的结论(请指正)。如果
core的个数非常多,内存非常大,我觉得threading是更好的模型。在目前主流的机器
配置上哪个更好貌似没有非常权威的答案(nginx是比apache要快,但是有实现相关的成
分在里面,而且web server毕竟逻辑比较简单,上升到语言层面,特别是解释型语言层
面会怎么样还真不好说),我窃以为threading可能更好一点。这是我对javascript最
大的担心。 |
|
b****y 发帖数: 169 | 13 湾区小公司。感兴趣请给我发站内邮件。
谢谢。
Job Description
• Support an always-available cloud-based SaaS platform
• Support application deployments, building new systems and
upgrading and patching existing ones.
• Develop automation to quickly and rapidly deploy instances from
hardened images
• Using monitoring tools to find problems, resolve and/or escalate
to development and ensure that we exceed our SLAs
• Build and manage development and testing environments, a... 阅读全帖 |
|
|
w**z 发帖数: 8232 | 15 NIO connector is Tomcat's way to increase throughput. Also Nginx is also
doing that. I feel it is very relevant to the topic. Async vs Sync.
we |
|
c*******0 发帖数: 5247 | 16
是你在讨论并发,不是我在讨论并发。你的定义是什么?
另外你找的例子要不要太老?两年前的也拿出来说。这种测试要找一大堆,Go 和
nginx的比较
https://gist.github.com/hgfischer/7965620
你要是没有什么直接的reference,还是不要随便下结论为好。我没兴趣claim Go的并
发比Haskell强,不过我倒是很有兴趣看你怎么支撑你的claim。 |
|
w***g 发帖数: 5958 | 17 java是阿三用来练剑阵的,即使流水般地换程序员,并且程序员素质极差,似乎也能极
大地保证项目的进展。这一点似乎再也没有别的语言可以匹敌了。在父类/子类都不是
你写的情况下,@overload貌似对于防止低水平程序员犯低水平错误还是非常有必要的。
不过写程序的办法多种多样。如果按java的标准看来,nginx的作者可能得直接送去烧
死。有一部分人的工作似乎就是擦屁股,但我并不觉得擦屁股有什么可以骄傲的。因为
会擦屁股的人实在太多了,所以一不小心没擦干净就会别干掉。
王垠写side project不擦屁股我觉得无可厚非。单枪匹马要做大东西,如果刻意去把每
一步都擦干净,这东西就永远也做不出来了。对用户来说,只要东西能稳定运行,里面
怎么写的谁在乎。
从我仅有的一点在不是那么大的公司干的经验来说,这种屁股没擦干净的代码是根本没
法checkin的。连peer review都到不了。 |
|
y**********u 发帖数: 6366 | 18 nginx不是用C写的吗?
这种event-driven的code看着很舒服啊
的。
客户
好上
能干 |
|
n*******2 发帖数: 89 | 19 最近看啦几个热门startup的JD, 基本上是LAMP,或者apache改用nginx,难道是java太
过于重量级,还是为了糙快猛。如果为省钱tomcat或者jboss也是免费的。相对于传统
的银行电信还是用J2EE架构主要 |
|
w**z 发帖数: 8232 | 20 一个网站可能比你想象的要复杂得多,有很多layer,就我接触到的就有 Apache,nginx
, MySQL, mq, memcached, Java services, real time chatting, Cassandra,
hadoop,
wordpress, photo
storage(mogilefs, s3), backup storage, 还有许多intergration point, 收钱的几
十个vendor,
Facebook, Twitter,发email ,SMS 等等。 每个layer都要HA, 有问题要及时察觉。
确实相当复杂。10million user, 300-500台机器很正常。
实node |
|
y**********u 发帖数: 6366 | 21 Jetty和Nginx感觉还是比较主流啊
量在 |
|
|
z****e 发帖数: 54598 | 23 http://www.techempower.com/blog/2014/03/04/one-million-http-rps
关键字undertow
As we and our collaborators prepare Round 9 of our Framework Benchmarks
project, we had an epiphany:
With high-performance software, a single modern server processes over 1
million HTTP requests per second.
Five months ago, Google talked about load-balancing to achieve 1 million
requests per second. We understand their excitement is about the performance
of their load balancer1. Part of what we do is performance consulti... 阅读全帖 |
|
|
d*******r 发帖数: 3299 | 25 大家 distribute http requests 到多机器,偏好用啥?
别说用啥都行,我问的是偏好.
比如 nginx 之类的具体工具或者 lib |
|
d*******r 发帖数: 3299 | 26 二爷你具体只指哪个 Load Balancer?
我会用 AWS EC2 Load Balancer, 简称 ELB
比如 nginx, DNS round robin 也可以做 Load Balancer 实现 Load Balancer 的技术 |
|
k**********g 发帖数: 989 | 27 C++ 要把它看成工具,而不是救命草。
工具是否有用,要看你的目的。
如果 DSP (signal proc) 是你的伟大构想,C++ 便是可用之材。
如果你是趴网格子, C++ 便无用武之地。(Nginx 除外) |
|
W***o 发帖数: 6519 | 28 作者: vinta.ws 博主
最近这几年在世界各地突然吹起了一股全民写程序的风潮,连美国总统欧巴马都在写
JavaScript 了,但是身为一介靠写程序(以及在上班时间胡乱上网)来谋生的
developer(所谓的 developer 就是「软件工程师」的比较潮的说法),想要提醒那些
想学习写程序的人一件重要的事:慎选你的第一个程序语言。
在软件工程师(中国叫做「程序员」或「码农」)的圈子里,文人相轻的现象可是非常
严重的,在程序设计的各个领域里都有着错综复杂的「鄙视链」。从程序语言、编辑器
、平台到 { 是写在 if 的同一行还是下一行,不同阵营的人都习惯鄙视来鄙视去。而
其中「你用什么程序语言?」更是大家最热衷的一条鄙视链,所以对于刚踏入程序设计
领域的初学者来说,万一程序语言选得不好,可是会一开始就落入鄙视链的底层啊。
软件工程师的鄙视链到底有多惨烈、多残酷呢?
http://mmbiz.qpic.cn/mmbiz/2A8tXicCG8ynAr4qteM9UvL8PdqM2XdHCXML
程序语言篇
懂 Functional Programming 的工程师鄙视老是把设计模式挂... 阅读全帖 |
|
w***g 发帖数: 5958 | 29 这个配置很不错。python提供restful API,只操心数据。呈现全由javascript实现。
很干净很现代的做法。服务器用paste server比较扯淡。不知道paste和apache/nginx
比有什么好的。HTML/css/javascript直接放在paste或者任意web服务器的document_
root下作为静态文件提供就行。 |
|
d****i 发帖数: 4809 | 30 这样做有一个问题,就是用户load page的时候会觉得体验没有直接在server端生成的
HTML页面好,所以全部JS不如JS+动态页面生成用户体验来的好。
nginx |
|
w***g 发帖数: 5958 | 31 Tornado is more of a web server than a framework.
Some people argue that concurrency != parallelization. Technically it is
true. But it is also true that parallelization is a must for HIGH
PERFORMANCE concurrency. Python is intrinsically handicapped in
parallelism (not to say cpython is among the slowest interpreters
), and I don't see why a web server written in Python has a future when
there is NGINX. |
|
d******e 发帖数: 2265 | 32 我们就是nginx后面挂一堆tornado,不可以吗? |
|
y**********u 发帖数: 6366 | 33 nginx是当reverse proxy吗?
is |
|
d*******r 发帖数: 3299 | 34 我觉得可以啊,nginx 后面挂的 python code 还是需要异步的 |
|
w**z 发帖数: 8232 | 35 Highly critical “Ghost” allowing code execution affects most Linux systems
New bug haunting Linux could spark "a lot of collateral damage on the
Internet."
by Dan Goodin - Jan 27 2015, 11:32am PST
Share
Tweet
110
Pixabay
An extremely critical vulnerability affecting most Linux distributions gives
attackers the ability to execute malicious code on servers used to deliver
e-mail, host webpages, and carry out other vital functions.
The vulnerability in the GNU C Library (glibc) represents a... 阅读全帖 |
|
c*******0 发帖数: 5247 | 36
事实上到目前为止,改头门第的人,来自Python和Ruby圈的最多。反而是因为Go的GC特
性让很多C/C++不愿意改投门第。
商业逻辑这方面转Go的确实少,Go本来也没打算在这方面和Java争。Go大部分是做
infra的。
个习惯问题,比如Swift style和Go类似,很多objc的人转了几周也就适应了。
我老早就在这里说了,Go不可能取代Java,Go的目标也不是取代Java。Java dominate
的地位,只要Android不倒,JVM不倒,是不会被动摇的。
同意
既然说到这了,我就多说几句。
Go是一门设计理念非常清晰但是顽固的语言。和别的语言不同,Go并不希望成为一个
one language rule them all。在一开始设计的时候,Go team的人的目标很简单,就
是满足Google内部做多team大规模infra的需求。注意,这个“多team大规模”是目标
,不是期盼。因为这个目标,所以才会有Go boring的语法,少得可怜的特性,和及其
简单的上手,以及超强的可读性。
Go社区的人喜欢Go,完全不是因为什么语言牛逼的特性,也不是什么best pe... 阅读全帖 |
|
s***o 发帖数: 2191 | 37 这个架构跟用nginx做Web Server,用js直接从第三层api取数据相比,有什么好处? |
|
N*****m 发帖数: 42603 | 38 nginx是http server;楼上说的是web service,不单单是一个http server |
|
p***o 发帖数: 1252 | 39 怎么给用户加只读权限? 网上nginx的reverse proxy例子都是同时给读写,没法只读。 |
|
|
|
|
|
b***e 发帖数: 1419 | 44 明确的说是跑在reverse proxy后面。这样比较好控制API的scope。 |
|
|
h**********c 发帖数: 4120 | 46 我一直有这个疑问,websocket 通过ngix,效果是什么样的 |
|
h**********c 发帖数: 4120 | 47 大牛是偶见过的best infra achitect
做个实验给大家证实一下吧 |
|
b***e 发帖数: 1419 | 48 别,我可没有仨专利,W2二十万,外加有也不是五倍还是十倍的杠杆。我最近确实在搞
些socket server,我都弄明白了再来说说。 |
|
|
|