s*g
2 楼
老板给了一个项目,这周五due,没有思路应该怎么搞。我们有个webapp,deploy到三
个server上。webapp是传统的spring,hibernate弄的。整个app的ID,CODE都存在
oracle的一个表里面,然后load到servletcontext里面。
现在的问题是要任意一个server上面的webapp update了CODE,需要update其他两个
server上webapp的servletcontext,同时还需要persist到oracle里。对real-time没有
要求。
我的想法是用activemq和spring的jmstemplate来弄:在‘更新CODE’的代码里面send
message到其他server,来update servletcontext,但是不明确这个怎么弄?
同时call另外一个service来persist到oracle里, 这样servletcontext里面的code随
时都是最新的。但是app里面基本上所有service都会用这个updated code,所以不知道
性能会不会有影响?
但不让设置一个单独的broker,只有用embedded broker。这样每个webapp上都有。老
板貌似不爽这个。让我用quartz schedule service来搞。号称可以避免在persist到
oracle里的时候发生冲突。这个如果用我的方案应该怎么解决?
个server上。webapp是传统的spring,hibernate弄的。整个app的ID,CODE都存在
oracle的一个表里面,然后load到servletcontext里面。
现在的问题是要任意一个server上面的webapp update了CODE,需要update其他两个
server上webapp的servletcontext,同时还需要persist到oracle里。对real-time没有
要求。
我的想法是用activemq和spring的jmstemplate来弄:在‘更新CODE’的代码里面send
message到其他server,来update servletcontext,但是不明确这个怎么弄?
同时call另外一个service来persist到oracle里, 这样servletcontext里面的code随
时都是最新的。但是app里面基本上所有service都会用这个updated code,所以不知道
性能会不会有影响?
但不让设置一个单独的broker,只有用embedded broker。这样每个webapp上都有。老
板貌似不爽这个。让我用quartz schedule service来搞。号称可以避免在persist到
oracle里的时候发生冲突。这个如果用我的方案应该怎么解决?
i*r
3 楼
没买过,不过iflychina上面几个大的应该都还比较可靠吧。
c*1
4 楼
真奇怪,为什么不直接用maven/jenkins/puppet chef/dockers管理部署,
而是用servlet管理代码
代码库的管理竟然用oracle的表
真是太少见了
send
【在 s*********g 的大作中提到】
: 老板给了一个项目,这周五due,没有思路应该怎么搞。我们有个webapp,deploy到三
: 个server上。webapp是传统的spring,hibernate弄的。整个app的ID,CODE都存在
: oracle的一个表里面,然后load到servletcontext里面。
: 现在的问题是要任意一个server上面的webapp update了CODE,需要update其他两个
: server上webapp的servletcontext,同时还需要persist到oracle里。对real-time没有
: 要求。
: 我的想法是用activemq和spring的jmstemplate来弄:在‘更新CODE’的代码里面send
: message到其他server,来update servletcontext,但是不明确这个怎么弄?
: 同时call另外一个service来persist到oracle里, 这样servletcontext里面的code随
: 时都是最新的。但是app里面基本上所有service都会用这个updated code,所以不知道
而是用servlet管理代码
代码库的管理竟然用oracle的表
真是太少见了
send
【在 s*********g 的大作中提到】
: 老板给了一个项目,这周五due,没有思路应该怎么搞。我们有个webapp,deploy到三
: 个server上。webapp是传统的spring,hibernate弄的。整个app的ID,CODE都存在
: oracle的一个表里面,然后load到servletcontext里面。
: 现在的问题是要任意一个server上面的webapp update了CODE,需要update其他两个
: server上webapp的servletcontext,同时还需要persist到oracle里。对real-time没有
: 要求。
: 我的想法是用activemq和spring的jmstemplate来弄:在‘更新CODE’的代码里面send
: message到其他server,来update servletcontext,但是不明确这个怎么弄?
: 同时call另外一个service来persist到oracle里, 这样servletcontext里面的code随
: 时都是最新的。但是app里面基本上所有service都会用这个updated code,所以不知道
b*i
6 楼
啥是CODE?给各例子?
send
【在 s*********g 的大作中提到】
: 老板给了一个项目,这周五due,没有思路应该怎么搞。我们有个webapp,deploy到三
: 个server上。webapp是传统的spring,hibernate弄的。整个app的ID,CODE都存在
: oracle的一个表里面,然后load到servletcontext里面。
: 现在的问题是要任意一个server上面的webapp update了CODE,需要update其他两个
: server上webapp的servletcontext,同时还需要persist到oracle里。对real-time没有
: 要求。
: 我的想法是用activemq和spring的jmstemplate来弄:在‘更新CODE’的代码里面send
: message到其他server,来update servletcontext,但是不明确这个怎么弄?
: 同时call另外一个service来persist到oracle里, 这样servletcontext里面的code随
: 时都是最新的。但是app里面基本上所有service都会用这个updated code,所以不知道
send
【在 s*********g 的大作中提到】
: 老板给了一个项目,这周五due,没有思路应该怎么搞。我们有个webapp,deploy到三
: 个server上。webapp是传统的spring,hibernate弄的。整个app的ID,CODE都存在
: oracle的一个表里面,然后load到servletcontext里面。
: 现在的问题是要任意一个server上面的webapp update了CODE,需要update其他两个
: server上webapp的servletcontext,同时还需要persist到oracle里。对real-time没有
: 要求。
: 我的想法是用activemq和spring的jmstemplate来弄:在‘更新CODE’的代码里面send
: message到其他server,来update servletcontext,但是不明确这个怎么弄?
: 同时call另外一个service来persist到oracle里, 这样servletcontext里面的code随
: 时都是最新的。但是app里面基本上所有service都会用这个updated code,所以不知道
s*g
7 楼
比如:
ID CODE CODE_GROUP
1 anonymous userType
2 normal userType
3 super userType
ID CODE CODE_GROUP
1 anonymous userType
2 normal userType
3 super userType
g*g
8 楼
The right way is to use an external caching server like Memcached or Redis,
and you keep your cache there.
That being said, the simpliest way on top of your current architecture is to
set up a REST or JMX or RMI call to invalidate cache on other nodes when
data is
updated
. And you can statically configure your nodes to know all other nodes in the
cluster.
send
【在 s*********g 的大作中提到】
: 老板给了一个项目,这周五due,没有思路应该怎么搞。我们有个webapp,deploy到三
: 个server上。webapp是传统的spring,hibernate弄的。整个app的ID,CODE都存在
: oracle的一个表里面,然后load到servletcontext里面。
: 现在的问题是要任意一个server上面的webapp update了CODE,需要update其他两个
: server上webapp的servletcontext,同时还需要persist到oracle里。对real-time没有
: 要求。
: 我的想法是用activemq和spring的jmstemplate来弄:在‘更新CODE’的代码里面send
: message到其他server,来update servletcontext,但是不明确这个怎么弄?
: 同时call另外一个service来persist到oracle里, 这样servletcontext里面的code随
: 时都是最新的。但是app里面基本上所有service都会用这个updated code,所以不知道
and you keep your cache there.
That being said, the simpliest way on top of your current architecture is to
set up a REST or JMX or RMI call to invalidate cache on other nodes when
data is
updated
. And you can statically configure your nodes to know all other nodes in the
cluster.
send
【在 s*********g 的大作中提到】
: 老板给了一个项目,这周五due,没有思路应该怎么搞。我们有个webapp,deploy到三
: 个server上。webapp是传统的spring,hibernate弄的。整个app的ID,CODE都存在
: oracle的一个表里面,然后load到servletcontext里面。
: 现在的问题是要任意一个server上面的webapp update了CODE,需要update其他两个
: server上webapp的servletcontext,同时还需要persist到oracle里。对real-time没有
: 要求。
: 我的想法是用activemq和spring的jmstemplate来弄:在‘更新CODE’的代码里面send
: message到其他server,来update servletcontext,但是不明确这个怎么弄?
: 同时call另外一个service来persist到oracle里, 这样servletcontext里面的code随
: 时都是最新的。但是app里面基本上所有service都会用这个updated code,所以不知道
m*h
9 楼
不是什么高手,这种用servlet context attribute存reference data的做法在当年
servlet的年代不少见。你需要做的是两件事:一是把updated data存到oracle里,这
个比较简单。然后需要所有的server reload这些code。我猜这个web app应该已经有
load code from oracle的功能了,一般context 启动的时候经常弄个listener做这个
;所以主要的考虑事怎么让这三个server都调这个function。用active queue和jms是
没错的,弄个pub-sub topic就行了:先存Oracle让后发个message;所有server
subscribe这个topic,然后call现成的reload method。这里有时需要考虑transaction
的问题,但我猜这种老系统也许没这要求。这个方案的最大问题是你得弄个queue
server,可能还得依靠别的组,又是ticket又是request的,有时候很折腾(尤其在“
大” 公司)。这可能是你老板不爽这个方案的原因。他既然能提出用quartz,听起来
像是programmer出身,说不定当manager之前就是写或者维护这个系统的人。难不成他
想用quartz定时每5分钟自动reload这些code?如果要求不高的话,不失一个cheap的办
法。听起来这个app没啥意思,不折腾为好。
send
【在 s*********g 的大作中提到】
: 老板给了一个项目,这周五due,没有思路应该怎么搞。我们有个webapp,deploy到三
: 个server上。webapp是传统的spring,hibernate弄的。整个app的ID,CODE都存在
: oracle的一个表里面,然后load到servletcontext里面。
: 现在的问题是要任意一个server上面的webapp update了CODE,需要update其他两个
: server上webapp的servletcontext,同时还需要persist到oracle里。对real-time没有
: 要求。
: 我的想法是用activemq和spring的jmstemplate来弄:在‘更新CODE’的代码里面send
: message到其他server,来update servletcontext,但是不明确这个怎么弄?
: 同时call另外一个service来persist到oracle里, 这样servletcontext里面的code随
: 时都是最新的。但是app里面基本上所有service都会用这个updated code,所以不知道
servlet的年代不少见。你需要做的是两件事:一是把updated data存到oracle里,这
个比较简单。然后需要所有的server reload这些code。我猜这个web app应该已经有
load code from oracle的功能了,一般context 启动的时候经常弄个listener做这个
;所以主要的考虑事怎么让这三个server都调这个function。用active queue和jms是
没错的,弄个pub-sub topic就行了:先存Oracle让后发个message;所有server
subscribe这个topic,然后call现成的reload method。这里有时需要考虑transaction
的问题,但我猜这种老系统也许没这要求。这个方案的最大问题是你得弄个queue
server,可能还得依靠别的组,又是ticket又是request的,有时候很折腾(尤其在“
大” 公司)。这可能是你老板不爽这个方案的原因。他既然能提出用quartz,听起来
像是programmer出身,说不定当manager之前就是写或者维护这个系统的人。难不成他
想用quartz定时每5分钟自动reload这些code?如果要求不高的话,不失一个cheap的办
法。听起来这个app没啥意思,不折腾为好。
send
【在 s*********g 的大作中提到】
: 老板给了一个项目,这周五due,没有思路应该怎么搞。我们有个webapp,deploy到三
: 个server上。webapp是传统的spring,hibernate弄的。整个app的ID,CODE都存在
: oracle的一个表里面,然后load到servletcontext里面。
: 现在的问题是要任意一个server上面的webapp update了CODE,需要update其他两个
: server上webapp的servletcontext,同时还需要persist到oracle里。对real-time没有
: 要求。
: 我的想法是用activemq和spring的jmstemplate来弄:在‘更新CODE’的代码里面send
: message到其他server,来update servletcontext,但是不明确这个怎么弄?
: 同时call另外一个service来persist到oracle里, 这样servletcontext里面的code随
: 时都是最新的。但是app里面基本上所有service都会用这个updated code,所以不知道
相关阅读
int i:1linux 文件大小的问题What is this trick in Excel?多线程的thread safety checking tool?如何同步多个程序同时读取一个文件求助,客户端软件怎么发SMS (转载)在C/C++里的文件复制操作请问static variable init的问题?help on perlC/C++ __int64和long long, cross platform问题MSG file reader收集整理的一些算法编程面试问题(pdf格式)C++ template function default argument 很怪?为什么C++每次产生的随机数都是一样的C++ 的 问题how to convert GMT to timestamp of the computer's current time电驴上的vs 2008 3.31G的那个好用吗?请问hash_map 如何在 vc2008中使用?QT for embedded linux的安装[合集] 微软另一道智力题,求救