我们正在开发一个1k连接的TCp服务器,使用异步调用它工作正常。 但是我们必须分别在DB中保存每个客户端的数据。
如何管理这么大的数据库连接池,理想情况下应该是硬件需要什么? 我们可以使用单核心机器进行TCP Server 1k连接吗?
信息:我们有支持GPRS的tcp客户端(这些是每1分钟连接到tcp服务器并发送数据的硬件设备。当前Db MYSQL
答案 0 :(得分:0)
我会按如下方式实现它:
有一组等待保存的数据保护锁。
当线程有新数据要保存时,获取集合上的锁,将数据添加到集合中,然后释放锁。
有一个“保存线程”(或保存作业,或适合您的语言或线程库的任何内容),定期获取集合上的锁,交换集合以获取空集合,释放锁,以及然后在单个SQL事务中保存集合中的所有数据。