Java web主机上的多处理
我有一个java动态web应用程序。我正在为我的android应用程序公开RESTful Web服务 问题是有一些服务可以进行数据库更新。现在,我想在公共域上托管应用程序。我想知道在web主机上并行处理是如何工作的 比如说,我的服务Java web主机上的多处理,java,web-services,multiprocessing,Java,Web Services,Multiprocessing,我有一个java动态web应用程序。我正在为我的android应用程序公开RESTful Web服务 问题是有一些服务可以进行数据库更新。现在,我想在公共域上托管应用程序。我想知道在web主机上并行处理是如何工作的 比如说,我的服务/updateDB更新数据库。现在,如果有两个用户同时访问同一个服务,那么这两个用户是否会同时运行,因为这将导致数据不一致。整个事情到底是如何运作的 我需要注意代码中的同步吗?为什么要使用这种数据库? 某些数据库引擎已经有了允许在另一个请求重写数据之前完成事务的机制。
/updateDB
更新数据库。现在,如果有两个用户同时访问同一个服务,那么这两个用户是否会同时运行,因为这将导致数据不一致。整个事情到底是如何运作的
我需要注意代码中的同步吗?为什么要使用这种数据库? 某些数据库引擎已经有了允许在另一个请求重写数据之前完成事务的机制。大多数web开发人员不必担心这一点,因为应用服务器(websphere、weblogic)和数据库(Mysql、Oracle)会为您处理这些事情 (我将为您过度简化此过程。) 对webservice的请求可能会在DB上执行一个或多个操作。这些操作可以聚集在一起并称为事务。交易可以包括以下一个或多个插入、更新、删除等。例如,新客户为您的Web服务注册。发生以下操作,这些操作可被视为事务
- A-原子性-每个事务都必须完成,如果事务中有任何内容失败,则不要完成该事务,并恢复该事务中以前的每个操作
- C-一致性-确保发生的每个事务始终以预定义的方式更新数据库。e、 g.每次客户注册后,确保执行其中的所有操作
- I-隔离-如果传入多个请求,那么它们将分别在数据库上执行
- D-持续性-事务完成后,所做的更改应永久保留
在google中搜索
“java数据库事务”
或“数据库事务”
基本上,如果我的web应用部署在tomcat上。我有MySQL,那么我真的不需要担心两个人是否在同一时刻访问应用程序(假设他们都在更改数据库中的相同值)。是的,你是对的。请务必阅读与数据库相关的其他注意事项,如打开和关闭连接、连接池等。它们都很重要,将帮助您构建可扩展的健壮应用程序。