高并发 I/O 远程抽取数据的问题

  • 8 核 CPU,32G 内存的 CentOS 服务器
  • 每分钟钟跑大约 5 个定时任务
  • 10000 多个远程数据库连接
  • 抽取得到后经过转化写入数据仓库数据库
  • 抽取任务的位移(offset)以数据表方式保存,下次执行任务从位移处开始,这一点决定了因为必须保持数据准度所以每次只能同时执行一次任务,否则会发生数据重复写入的情况,也因此,每次任务也最好一分钟内跑完
  • 如果分进程执行任务,需一次性写入所有数据,不能分进程写入

求可以参考的技术方案选型,技术层面优先。


补充:

已经有过的尝试的方案是使用 Python 多进程 + Twisted,但 Twisted 对多进程支持并不好,会出现进程卡死。所以上来来问问大神们,求帮助!

阅读 3.4k
1 个回答

高并发? 高是多少? 十多秒一个任务是个什么情况, 数据是怎么样?类型? 建议把你设计的雏形拿出来大家讨论一下,毫无根据的直接问别人谁会回答。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题