问题标签 [cluster-computing]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 集群共享缓存
我正在寻找一个允许我在多个 JVM 之间共享缓存的 java 框架。
我需要的是像Hazelcast但没有“分布式”部分的东西。我希望能够在缓存中添加一个项目并将其自动同步到其他“组成员”缓存。如果可能的话,我希望通过可靠的多播(或类似的东西)同步缓存。
我看过Shoal,但遗憾的是“分布式状态缓存”似乎不足以满足我的需求。
我看过JBoss Cache但对于我需要做的事情来说似乎有点矫枉过正。
我看过JGroups,这似乎是我需要做的最有前途的工具。有没有人有 JGroups 的经验?最好将它用作共享缓存?
还有其他建议吗?
谢谢 !
编辑:我们正在开始测试以帮助我们在 Hazelcast 和 Infinispan 之间做出决定,我很快就会接受答案。
编辑:由于突然的需求变化,我们不再需要分布式地图。我们将使用 JGroups 作为低级信号框架。谢谢大家的帮助。
php - 负载平衡集群中的 PHP 会话 - 怎么样?
好的,所以我得到了这个完全罕见的负载平衡 PHP 网站的独特场景。令人遗憾的是 - 它以前不是负载平衡的。现在我们开始遇到问题了...
目前唯一的问题是 PHP 会话。自然一开始没有人想到这个问题,所以 PHP 会话配置保持默认。因此,两台服务器都有自己的少量会话文件存储,而将下一个请求抛出到另一台服务器的用户是不幸的,因为那没有他在第一个服务器上创建的会话。
现在,我一直在阅读有关如何解决这种情况的 PHP 手册。在那里我发现了session_set_save_handler()
. (而且,巧合的是,这个话题关于 SO) 整洁。除了我必须在网站的所有页面中调用这个函数。未来页面的开发人员也必须记住一直调用它。感觉有点笨拙,更不用说可能违反了十几个最佳编码实践。如果我可以翻转一些全局配置选项会更好,然后瞧——会话都神奇地存储在数据库或内存缓存或其他东西中。
关于如何做到这一点的任何想法?
补充:澄清 - 我希望这是标准解决方案的标准情况。仅供参考 - 我有一个可用的 MySQL 数据库。肯定有一些现成的代码可以解决这个问题吗?当然,我可以编写自己的会话保存内容,Greg
auto_prepend
指出的选项似乎很有希望——但这感觉就像重新发明轮子一样。:P
补充2:负载均衡是基于DNS的。我不确定这是如何工作的,但我想它应该是这样的。
补充 3:好的,我看到一种解决方案是使用
auto_prepend
选项在每个脚本中插入调用session_set_save_handler()
并编写我自己的数据库持久化器,也许会调用调用以memcached
获得更好的性能。很公平。
还有一些方法可以避免我自己编写所有这些代码吗?就像一些著名且经过良好测试的 PHP 插件一样?
很久很久以后添加:这就是我最终采用的方式:如何在 PHP + MySQL 中正确实现自定义会话持久性?
此外,我只是在所有页面中手动包含会话处理程序。
scalability - 可扩展站点
facebook、skype、myspace 等......都有数百万用户,有谁知道他们的架构是什么样的。它是分布在不同的节点上还是使用大量集群?
java - 加快对mysql的操作
我目前正在一个有十个节点的集群中针对 mysql 编写 java 项目。该程序只是从数据库中提取一些信息并进行一些计算,然后将一些数据推回数据库。但是,表中有数百万行。有什么方法可以拆分工作并利用集群架构?如何在不同的节点上进行多线程?
cluster-computing - 有人在集群系统上使用过UDS(统一开发服务器)吗?
UDS(以前称为 Forte 4GL)是我们当前系统运行的平台。我记得在一个论坛中找到了一个标志,该标志记录了如何在 Veritas 集群上部署它。然而,现在我们有了现代硬件,我在谷歌的任何地方都找不到那个注释。
database - 数据库集群如何工作?
我有一个 DBA 的问题:如果我从单个 Web/DB 服务器设置扩展到两个 Web/两个 DB 服务器设置,并且在 Web 服务器前面有一个负载平衡器以均匀地路由传入的查询......如何解决像 MySQL 集群一样工作,以便对一个数据库服务器所做的更改立即被另一个知道(否则,路由到另一个数据库服务器的用户将看不到数据或将过时的数据),或者至少让另一个 Web 服务器是否意识到它正在读取“脏数据”并且应该在 X 秒内再次尝试以获取最新数据?
谢谢你。
session - Tomcat session-cluster:是生产级别的吗?它可以扩展吗?
我想知道有关 Tomcat 会话集群解决方案的任何经验。是生产水平吗?它可以扩展吗?我可以在服务器场中使用它吗?您是否为会话集群推荐任何其他解决方案?(例如:数据库、terracota、jgroups 等)
tomcat - Tomcat 集群和 HTTPS 问题
我有两个 Tomcat 6 实例,其内容可通过 HTTP 和 HTTPS 访问其他页面。
我以这种方式配置了实例:
- 实例一监听端口 8080(HTTP) 和 8443(HTTPS)
- 实例二监听端口 7080(HTTP) 和 7443(HTTPS)
我用 Apache 2.2 配置了 mod_proxy 来进行集群。
请求正确进入,并且对于 HTTP 流量一切正常,但是当您在应用程序中并且它变为 HTTPS 时,当 tomcat 尝试提供该页面时,我得到该页面无法找到。
现在,如果我直接绕过负载均衡器访问两个 tomcat 实例,那么一切都很好。所以 http/https 在 tomcat 上配置正确,但在 Apache 上没有。
我有一种感觉,我必须配置 Apache 来处理这个(或 mod_proxy)。
php - 与主数据库同步
我在不同的服务器上托管了 2 个数据库。最好的办法是将主表数据库的所有内容复制到从数据库的表中?我不是主数据库的所有者,但他们愿意提供访问权限。在主数据库中的数据通过 RSS 输出之前,我的 PHP 脚本解析它以将其插入另一个数据库所在的另一台服务器,但由于数据内容巨大,需要 24 小时更新并将数据插入远程数据库,这可能是因为2 个数据库开销。所以我们计划创建一个脚本,从主数据库下载数据并保存本地副本,然后通过 FTP 到第二台服务器并将内容转储到数据库中。即使 CSV 或 SQL 文件的大小约为 30MB 并且仍在增长,这是否可取?什么是最好的解决方案?
注意:从下载到 FTP 到插入第二个数据库的所有脚本都由 cron 处理以进行自动更新。
sql-server - 为 SQL Server 集群开发
如果我正在为将使用 SQL Server 集群的环境进行开发,我应该注意什么(如果有的话)?
从我所见,我应该处理数据库操作的异常并有两个选择:
- 向用户显示“重试”。到用户重试时,故障转移节点应该已经启动。
- 等待几秒钟,然后重试,而不通知用户。
它是否正确?这就是我需要做的吗?
这是一个 ASP.NET 应用程序,但我认为这不会对这种方法产生巨大影响。
任何意见,将不胜感激
邓肯