使用在某个远程服务器上运行的mysql数据库作为连接两台远程计算机的方法是不好的做法吗?例如,当box1轮询远程数据库的特定行时,检查box2发布的值,当box2发布一些值box1时,会执行a,b,c。 感谢您的任何建议。作为套接字编程的替代方案的MySQL数据库?
回答
请考虑使用诸如ZeroMQ之类的东西,这是一个易于使用的套接字抽象概念,适用于大多数语言的绑定。有一些不错的intro documentation以及many examples你可以在你的应用程序中使用的各种模式。
我可以理解为此使用数据库的诱惑,但持续写/轮询只是为了在客户端之间传递信号浪费IO,连接连接等等,更重要的是,似乎很难理解/由另一个人(或两年内的你自己)调试。
您可以。如果你正在构建一些复杂的东西,我会告诫它,但是没关系 - 你需要处理的事情只做一次,但这并不困难。
你在做什么被称为消息队列,并且有特定于此的开源项目 - 包括一些构建在MySql上的项目。
如果只有2台电脑(发送者 - 接收者),那么这是不好的做法如果你需要快速的响应时间。否则,没关系......直接套接字连接会更好,但如果你不需要它,不要浪费时间。
另一方面,如果有超过两台机器和/或您需要容错,那么您实际上需要中间人。根据你希望在机器间传递的信号,中间人可以是一个简单的键值存储(例如:memcached,redis)或消息队列(例如:一个专用的消息队列软件,但我已经看到MySQL用作两个队列不同的网站有很大的流量)
以及我可以多快查询mysql数据库,它是否受我的isp配置限制? – brux 2011-04-08 19:45:21
取决于服务器和配置。你必须测量它;) – 2011-04-09 07:47:13
- 1. 用于GAE的套接字库的替代方案
- 2. 存储除mysql,sql等数据库之外的数据的替代方案
- 3. 在rails 3应用程序中的mysql数据库结构替代方案
- 4. C/C++的多数据库库有哪些替代方案?
- 5. 将Windows套接字程序移植到Unix:unix中winsock32 API的替代方案
- 6. MySQL LIKE替代方案
- 7. 外套的替代方案是什么?
- 8. ExpandableHeightGridView替代方案(图片+文字库)
- 9. 什么是C++方案的标记数据的替代方案
- 10. MySQL中ENUM数据类型的替代方案
- 11. 针对替代方案的Mysql匹配
- 12. MySQL查询:INFORMATION_SCHEMA.TABLES的替代方案
- 13. Tarantino用于数据库持续集成(CI)的替代方案?
- 14. 数据库同步的替代解决方案
- 15. 数据库中可列表集合的设计替代方案
- 16. MongoDB是关系数据库+ lucene的有效替代方案吗?
- 17. 在单个数据库表中加入的替代方案
- 18. 嵌套接口的替代方案(在C#中不可能)
- 19. MySQL和一个连接中的每个表的替代方案
- 20. Python GD GD库的替代方案
- 21. 套接字编程数据服务器
- 22. TCP套接字编程,读数据时奇怪的行为
- 23. B方法是传统编程语言的替代方案吗?
- 24. 多维数据处理替代方案
- 25. 用numpy数组作为边界的替代方案
- 26. 套接字编程 - 奇怪的行为
- 27. 线程中断的替代方案?
- 28. 建议替代方案的例程
- 29. Access应用程序的替代方案
这是非常有趣的东西,我现在看视频概述,感谢在这里指出我...即时通讯仍然诱惑,虽然:F(评论意味着这里不是上述) – brux 2011-04-08 19:44:52