d*g 发帖数: 66 | 1 我有一个project/web application,(based on java, spring, hibernate,,etc) 里
面有10个左右的apps。
现在要求可以build多个web site, 每个site可以调用多个app,像这样的设计问题有什
么好的framework可以handle.
谢谢 | r*****l 发帖数: 2859 | 2 能说的更详细些吗?
【在 d*g 的大作中提到】 : 我有一个project/web application,(based on java, spring, hibernate,,etc) 里 : 面有10个左右的apps。 : 现在要求可以build多个web site, 每个site可以调用多个app,像这样的设计问题有什 : 么好的framework可以handle. : 谢谢
| k***r 发帖数: 103 | 3 每个web app 都把自己的功能用REST之类的web service api发布出来不就可以调用了?
【在 d*g 的大作中提到】 : 我有一个project/web application,(based on java, spring, hibernate,,etc) 里 : 面有10个左右的apps。 : 现在要求可以build多个web site, 每个site可以调用多个app,像这样的设计问题有什 : 么好的framework可以handle. : 谢谢
| d*g 发帖数: 66 | 4 是这样的,就是一个code base的web application, 但需要给多个用户customize/
deploy 多个不同的sites,就是他们到不同的url 看到大概类是的web sites, 每个site
之间share 大部分的ui and server code,但都有各自不同的ui and server logic.
这个要求稍微有点challenge,现在初步server side code的architecture是这样的
这是大概的结构,实际的会更多details.
customers specified\
client1\app1 (logic, db, service..etc)
client1\app2 (logic, db, service..etc)
celint1\spring-context.xml
client2\app1 (logic, db, service..etc)
client2\app3 (logic, db, service..etc)
client2\spring-context.xml
api(api level code)
app1\
app2\
app3\
db\
service\
....
spring-context.xml
utility
a\
b\
....
deploy client1 会吧client1 apps + api + utility deploy成一个web site,
client2 apps + api + utility会成为第二个web site.
api 部分是packaged by layers, apps 部分是 packaged by features,没个client都
有自己customized的code。 client2部分的code 是不会deploy进入client1的web site。
虽然也干了很多年了,但这个scale稍微比平常做的大了几倍,希望大牛给点意见。共
同切磋吧。
非常感激
了?
【在 k***r 的大作中提到】 : 每个web app 都把自己的功能用REST之类的web service api发布出来不就可以调用了?
| d*g 发帖数: 66 | 5 谢谢, 考虑过这个,不过因为要求是一个code base,所以 rest service可以省略,直
接通过package/jar 调用。
了?
【在 k***r 的大作中提到】 : 每个web app 都把自己的功能用REST之类的web service api发布出来不就可以调用了?
| g*****g 发帖数: 34805 | 6 All you need is setup multiple modules, keep common logic in one or few
modules. And customized logic in its own module. If you are familiar
with Maven, that should be pretty straightforward.
【在 d*g 的大作中提到】 : 谢谢, 考虑过这个,不过因为要求是一个code base,所以 rest service可以省略,直 : 接通过package/jar 调用。 : : 了?
| r*****l 发帖数: 2859 | 7 感觉你想deploy多个webapps。除非有特别要求,否则没这个必要。一个webapp就可以
了。你可以用用户名switch logic。spring mvc做这个很容易的。
site
【在 d*g 的大作中提到】 : 是这样的,就是一个code base的web application, 但需要给多个用户customize/ : deploy 多个不同的sites,就是他们到不同的url 看到大概类是的web sites, 每个site : 之间share 大部分的ui and server code,但都有各自不同的ui and server logic. : 这个要求稍微有点challenge,现在初步server side code的architecture是这样的 : 这是大概的结构,实际的会更多details. : customers specified\ : client1\app1 (logic, db, service..etc) : client1\app2 (logic, db, service..etc) : celint1\spring-context.xml : client2\app1 (logic, db, service..etc)
| r*****l 发帖数: 2859 | 8 推荐Gradle。我现在fan Gradle。
【在 g*****g 的大作中提到】 : All you need is setup multiple modules, keep common logic in one or few : modules. And customized logic in its own module. If you are familiar : with Maven, that should be pretty straightforward.
| g*****g 发帖数: 34805 | 9 Looks like good stuff, too bad we are deeply stuck in Maven and
I don't see we'll change it in forseeable future.
【在 r*****l 的大作中提到】 : 推荐Gradle。我现在fan Gradle。
| d*g 发帖数: 66 | 10 如果ant 暂时不能不用的话,应该难度也不大吧?
谢谢
【在 g*****g 的大作中提到】 : All you need is setup multiple modules, keep common logic in one or few : modules. And customized logic in its own module. If you are familiar : with Maven, that should be pretty straightforward.
| d*g 发帖数: 66 | 11 是呀,上面的要求,deploy多个web apps
这种结构+ant build应该没什么大的障碍吧?
【在 r*****l 的大作中提到】 : 感觉你想deploy多个webapps。除非有特别要求,否则没这个必要。一个webapp就可以 : 了。你可以用用户名switch logic。spring mvc做这个很容易的。 : : site
| r*****l 发帖数: 2859 | 12 Maybe your boss/lead wants to have isolation and independence between
projects.
Ant can do. However, if this is a new project, better off with Maven, which
has multi-project/module support.
If you want to spend time to learn Gradle, I would recommend Gradle :)
【在 d*g 的大作中提到】 : 是呀,上面的要求,deploy多个web apps : 这种结构+ant build应该没什么大的障碍吧?
| w*******s 发帖数: 940 | 13 基本上,用maven可以解决
结构可以这样
parent
logic
db
service
client1
api
app1
app2
client2
api
app1
app2
....
在parent里,把下一的加到里
client下的,也是加到modules里,
然后把logic, db, service加到api, app的dependencies里
到时候想搞client1搞client1
想搞client2就搞client2
想全搞就在parent那搞
site
【在 d*g 的大作中提到】 : 是这样的,就是一个code base的web application, 但需要给多个用户customize/ : deploy 多个不同的sites,就是他们到不同的url 看到大概类是的web sites, 每个site : 之间share 大部分的ui and server code,但都有各自不同的ui and server logic. : 这个要求稍微有点challenge,现在初步server side code的architecture是这样的 : 这是大概的结构,实际的会更多details. : customers specified\ : client1\app1 (logic, db, service..etc) : client1\app2 (logic, db, service..etc) : celint1\spring-context.xml : client2\app1 (logic, db, service..etc)
|
|