那么 golang+mysql 的并发会有多少呢
mysql 的配置就选个一般点的吧,没有 SSD 的
golang+mysql 会有 25 倍 python+mysql 的并发吗
1
JohnSmith 2017-06-14 17:42:06 +08:00 1
不是这样衡量的,首先不应该带着 mysql 来评测语言性能,其次要看使用示例,最直接的办法是写个 benchmark
|
2
maemual 2017-06-14 17:42:16 +08:00
。。。。。瓶颈在 mysql
|
3
pengdu 2017-06-14 17:42:30 +08:00
不会,因为你这个瓶颈在 mysql 这里。
|
4
pengdu 2017-06-14 17:45:59 +08:00
golang 的并发高,你可以理解为你有一个 server,同时 10w 个长连接。golang 可以给每个连接一个 goroutine。你用 python/c/java 都做不到,需要些比较复杂的线程池或者用 epoll 之类的。
|
5
tairan2006 2017-06-14 17:46:59 +08:00
楼主好像没搞清一些基本的问题……
|
6
jarlyyn 2017-06-14 17:47:11 +08:00
楼主只认识 mysql 么……
比如后端挂一个 redis? |
7
chenqh OP @jarlyyn 主要还是 mysql 啊,redis 在我现在的业务来説是很少説,因为 mysql 毕竟 有个 web gui,找数据比 redis 要好找点。。而且我现在并发也不高,最高一分钟 600 吧
|
8
jarlyyn 2017-06-14 17:54:36 +08:00
|
11
incompatible 2017-06-14 18:14:55 +08:00 via iPhone
你这个场景瓶颈在 mysql 上。
另外 golang 又不止是让你用来写 CRUD 的,你若有机会做个高性能的网络产品比如 API 网关,golang 自然要比 python 性能好的多。 |
12
orvice 2017-06-14 18:17:10 +08:00
是写并发方便😋
|
13
gamexg 2017-06-14 18:25:12 +08:00 2
实际 golang 并不是并发高,而是只需要按照多线程阻塞模式写网络程序,编译器自动转换成为 协程+epoll。
没实测,理论上 golang 的性能和 c 语言用 epoll 写的性能是一致的,可能由于自动垃圾回收性能还次于 c。 但是重点是写起来简单啊,epoll 之类的用起来比较麻烦,但是 golang 只需要疯狂开协程就行,一个连接来了,直接开一个协程 阻塞 read,阻塞 write,高兴了一个连接开两个协程,一个负责 read 一个负责 write 也没问题。开几十万协程也没什么性能问题。 |
14
zjsxwc 2017-06-14 18:31:09 +08:00
瓶颈在 io,不在 golang
|
15
sampeng 2017-06-14 20:22:56 +08:00
你要带 mysql。。。。我想没有任何一门语言能够碾压吧。。。
|
16
reus 2017-06-14 21:02:56 +08:00
用了 mysql,你用啥语言都差不多
|
20
changwei 2017-06-15 03:18:29 +08:00 via Android 1
就算是用 php,python 这种脚本语言开发网站,实际性能瓶颈也在 mysql,更别说 golang 了。
|
21
ryd994 2017-06-15 04:36:18 +08:00 via Android 1
先别急着分库分表,缓存做好了么?
|
22
weer0026 2017-06-15 08:46:42 +08:00
看业务场景,不可能所有数据都是热数据,所以还是看场景加缓存隔离 mysql,不用 redis 那就 memcache。
|
23
RubyJack 2017-06-15 09:11:06 +08:00
先做缓存,我们一秒 2k 个动态请求,mysql 单机搞定,而且流量很低
|
25
mengzhuo 2017-06-15 11:38:13 +08:00
别急着分库分表, 索引做好了么,引擎调优了么, 数据项精简了么?
|
26
pantingwen 2017-06-18 09:17:27 +08:00
估计跑出来的结果都差不多,mysql 才是瓶颈,不要 db 才能对比两者的并发
|