|
|
导航: |
论坛 -> DELPHI技术
斑竹:liumazi,sephil |
|
作者: |
|
2020/3/14 13:36:39 |
标题: |
困扰很久的问题:5千客户端直连阿里云服务器上的mySql,如何确保稳定? |
浏览:1494 |
|
加入我的收藏 |
楼主: |
5千到1万个客户端,直连MySql,同步数据,重点需求: ---------- 1、每客户端每3分钟左右,同步小部分数据,类似某个单表的状态变更,这个数据量不大,大概每次同步更新几条或十几条数据; 2、所有客户端,在每天0点到5点时间段,上传整天的营业汇总数据,大概每个客户端100条左右的记录; ---------- 目前的情况,我为了不影响操作体验,做了一个后台程序,且在线程里更新和同步。 用的是fdconnection直连云端的mysql数据库,且用的是长链接,没有任何特殊技术处理。
目前的问题: 不稳定,经常连不上mysql或者出现内存错误。
解决办法的思路: 1、是不是用短链接会好一点? 2、fdconnection链接池能优化这类的问题吗?
还有没有更好的处理办法?写个datasnap服务端? 请大神给点参考意见,多谢!
----------------------------------------------
- |
作者: |
joman (joman) |
▲▲▲▲▲ |
-
|
普通会员 |
|
2020/3/14 14:01:56 |
1楼: |
无法保证稳定,正规的做法是用连接池,和数据缓存,直连数据库的做法太原始了,设计好的系统不会这么干。 写服务端,服务端做业务处理,客户端只做界面,服务端用连接池和负载,数据库用读写分离或插件进行分离如mycat 插件
----------------------------------------------
DelphiWeb开发方案(开源):https://gitee.com/pearroom/DelphiWebMVC
|
作者: |
a5824 (Return) |
★☆☆☆☆ |
-
|
普通会员 |
|
2020/3/14 15:15:47 |
2楼: |
才100条的数据,你却占用了3分钟,建议你把数据打包,发给服务器,数据库执行就行了。如果你要来回的验证数据有没有更改,建议你加时间戳
----------------------------------------------
-
|
作者: |
|
2020/3/14 16:11:30 |
3楼: |
http://blog.sina.com.cn/s/blog_44fa172f0102w2we.html
----------------------------------------------
delphi 是兴趣,和工作无关,即使它倒闭。又不靠它 delphi 吃饭,怕甚?
|
作者: |
|
2020/3/14 16:54:52 |
4楼: |
3分钟一次 肯定是 短链接啊。
5000 客户端 3分钟一次 我估计并发也就200左右
----------------------------------------------
-
|
作者: |
|
2020/3/14 17:36:22 |
5楼: |
KBMMW
----------------------------------------------
-
|
作者: |
|
2020/3/14 17:54:14 |
6楼: |
a5824 (Return)不是说100条记录执行占了三分钟。 这个同步有2个功能,第一个每隔3分钟做一次同步少部分数据,几条记录。 还有同步是每天0点到5点,同步100条记录。 按执行来说,数据量不大,都是秒内能执行同步完成。
短链接合适对吗?因为是担心每次重连会消耗时间,且现在的最主要的问题,都是出现在链接的时候,出现错误。
我不大想用第三方的控件,担心升级维护麻烦 还有什么好意见呢?
----------------------------------------------
-
|
作者: |
|
2020/3/14 17:56:40 |
7楼: |
joman (joman) 服务端确实可以尝试一下,我习惯用datasnap。 datasnap我做了其他一些小部分服务,感觉稳定性还行。
就是不知道这么多客户端,每时每刻都在链接datasnap,这个datasnap会不会当掉。
----------------------------------------------
-
|
作者: |
|
2020/3/14 17:59:22 |
8楼: |
因为mysql我是安装在centos系统下。 所以写datasnap估计不合适,delphi目前这块应该不支持centos
----------------------------------------------
-
|
作者: |
|
2020/3/14 18:10:13 |
9楼: |
https://www.cnblogs.com/hnxxcxg/p/11860579.html 我有DELPHI FOR LINUX中间件。 在阿里CENTOS云服务器上部署OK。 中间件支持以控制台或LINUX服务方式运行。
----------------------------------------------
中间件QQ群: 92449782 博客: http://www.cnblogs.com/hnxxcxg/
|
作者: |
|
2020/3/14 19:41:51 |
10楼: |
这个好,linux
----------------------------------------------
-
|
作者: |
|
2020/3/14 19:46:56 |
11楼: |
java .net core php等写个restful,网上也有这样的源码,delphi通过json调用也很方便的
----------------------------------------------
-
|
作者: |
|
2020/3/14 19:51:21 |
12楼: |
用webservice吧,这个实现起来最简单,什么操作系统都可以。
----------------------------------------------
-
|
作者: |
|
2020/3/14 21:18:54 |
13楼: |
这是什么虎狼般的操作?居然上万个连接直连数据库? 一:既然用了阿里云,为啥不用云数据库? 二:如此频繁的访问,为啥不用redis之类的内存库做缓存? 三:这种结构为啥不做成bs用php等做个中间层?
----------------------------------------------
--
|
作者: |
joman (joman) |
▲▲▲▲▲ |
-
|
普通会员 |
|
2020/3/14 23:06:08 |
14楼: |
http服务都是短链接,用http.sys并发不是问题,瓶颈主要在连接池和业务处理上,再大的并发用nginx负载,主要瓶颈就在数据库上了,该考虑使用redis之类的内存数据库了
----------------------------------------------
DelphiWeb开发方案(开源):https://gitee.com/pearroom/DelphiWebMVC
|
作者: |
|
2020/3/15 8:10:21 |
15楼: |
DELPHI开发LINUX中间件,现在已经非常容易和方便,并不需要借助其他开发语言(这是在旧社会)。
----------------------------------------------
中间件QQ群: 92449782 博客: http://www.cnblogs.com/hnxxcxg/
|
作者: |
msfm (清洁工) |
★☆☆☆☆ |
-
|
盒子活跃会员 |
|
2020/3/16 4:55:51 |
16楼: |
买我的中间件吧 只需要提交sql 其它你啥也不用管
----------------------------------------------
-
|
作者: |
|
2020/3/16 10:36:36 |
17楼: |
moonserver.cn 这难度简直没啥可说了,脚本搞定就行了。
----------------------------------------------
Delphi威武!千秋万代,一统江湖!Delphi威武!千秋万代,一统江湖!Delphi威武!千秋万代,一统江湖!Delphi威武!千秋万代,一统江湖!Delphi威武!千秋万代,一统江湖!Delphi威武!千秋万代,一统江湖!Delphi威武!千秋万代,一统江湖!我去WC吐一会儿去!
|
作者: |
|
2020/3/16 15:12:45 |
18楼: |
datasnap rest做中间件,连接sql server,每秒5000个并发都能正常响应。
----------------------------------------------
-
|
作者: |
|
2020/3/18 15:18:55 |
19楼: |
阿里云搭建php环境,写处理api接口...我就这么干的。
----------------------------------------------
相信自己,若自己都不相信,那还有谁可信。
|
|