首页 > 多客户端链接mysql,安全和效率问题?

多客户端链接mysql,安全和效率问题?

遇到项目实际需求,特此来请教大家。(本人没啥经验)
项目:多个客户(客户端),用同一桌面软件(VC 或者 C#开发),去链接自己的数据库,进行读写(读少,写多!而且写可能会持续1s一次写,要2个小时的样子)。假定以200个客户端同时写的情况,来考虑。

首先遇到的就是安全问题:因为每一个客户都是对应不同的数据库,密码。所以:客户端软件所需的数据库名,密码,应该怎么处理?写在哪里?特别要注意的是,我们不希望用户得到这个密码,从而可以导出数据库(不能让用户反向出数据库)
我自己想到是通过 post到 php网站来处理,客户端post过来他的用户id和密码,在网站上验证,通过则写入数据库。可是又担心效率问题 (当然没测试),我个人感觉应该不如直接把数据库密码弄在本地。(或者谁有经验,能否说出效率会相差多大?)

有经验的朋友给些许提示,思路。谢谢了。

所以:客户端软件所需的数据库名,密码,应该怎么处理?写在哪里?还要考虑效率


建议不要直接连接数据库操作,修改为客户端通过POST将数据提交给PHP处理,为了提高效率,PHP接受到数据后,直接将数据丢进一个缓存队列,然后再单独开启一个服务进程监控缓存队列,及时进行入库落地操作。当然,你也可以自己实现一个长连接的服务端,自己实现一套缓存规则,会比PHP方式更高效


没人回答。。。


既然是多个客户端,又考虑安全性问题,那么可以考虑使用Token来解决。

对于效率问题,如果数量就几百个的话,那完全不用担心PHP的效率问题,但对于你这种持续时间较长的写入的话,还需要在服务端进行优化较好,比如考虑楼上说的消息队列来实现。

如果在没有测试的情况下,就使用开发成本较高的队列的话我觉得不划算,还是先用比较原生的PHP压测一下,如果效率问题可以接受的话,那就如此。

如果真的存在效率问题,再对服务端进行优化也不迟。

【热门文章】
【热门文章】