【发布时间】:2012-10-18 00:46:05
【问题描述】:
我已经使用 Web 应用程序有一段时间了。但是,我从来没有处理过托管为多个实例并进行负载平衡的 Web 应用程序。
我的问题:Web 应用程序如何管理跨同一应用程序的多个实例的写入?
例如:订票网站。想象一下,我在某排座位上为一部电影挡住了座位,然后提交了我的请求。同时另一个用户(由于应用程序被集群和负载平衡而由其他实例提供服务)也阻止了我选择的一个席位,Web 应用程序如何管理这种情况?因为,它们是在不同机器上运行的不同进程,锁定发生在哪里?他们如何保持缓存一致性?有现成的解决方案吗?
【问题讨论】:
-
你的后端是什么?你用数据库吗?哪个?
-
@Tichodroma。我们不会很快切换到负载平衡应用程序。我在学术上对此很感兴趣。不过,我熟悉 SQL Server、Spring 事务管理和 JBoss 缓存中的锁定和事务隔离级别。有了我的这个背景,如果你能指出一些可以增强我对分布式应用程序理解的文章,我将不胜感激。谢谢。
标签: java web-applications concurrency scalability