感谢您阅读我的提问,特请教一个问题:
我做公司碰到这么一个现象,一个超大型的web项目(这样一个解决方案),无分层,700多张表,一个数据库,几个大的功能模块,每个大的功能模块下很多子菜单,菜单下又有子菜单项,简直太恐怖了。
我想到一种方式,将提供用户信息、组织、权限等基础数据的功能独立成一个项目,单独一个数据库,这个项目会被其它项目频繁的调用。
根据业务不太相关的功能各自孤立成单独的项目,对应独自的数据库。
小弟入门时间短,对wcf webapi一知半解,请问可否能用webapi解决项目之间的通讯。这样身份验证该如何做。
希望大家提供一个详细的思路,比较通用的解决方案。
目前平台只是 .net, 也暂不考虑跨服务器什么的。
根据业务进行功能模块的细化,这种做法是对的,我更推荐WCF,至于微服务架构,虽然这段时间很火,但是不适合你的系统,关于具体可以自己研究下微服务架构的利弊
内部通信,不跨服务器,wcf在服务架构上可能会优于webapi,个人拙见,在自己的项目经验中习惯了wcf主内,webapi主外
@visonme: 你这里说的内部通信是采用哪种方式
个人觉得你的想法是对的。现在比较流行的概念有个微服务。你这里就可以把整个项目拆分成一个个的微服务,通信全部走REST API(如果流量大,可以结合MQ来)。
关于你所说的身份验证,微服务架构中,一般采用token认证。
token认证 不太懂,要好好学学了
@丶飘零丶: 你看OAuth就明白了。
项目大并不意味着pv量大 ,没有pv怎么做都问题不大
什么是PV
@丶飘零丶: PV 就是表示PageView 访问量,你这是内部系统,不是网站,访问量小,想怎么做都可以
项目大并不意味着pv量大 ,没有pv怎么做都问题不大。
你都已经接手这项目了,而且这项目是你在负责的话,那你懂啥就咋做呗。
对于这种大型项目,最好慢慢维护,代码能不动尽量不动,否则后果无法想象
既然你都说了入门短,还是先维护一段时间,充分了解系统后在做打算
用基于OAuth2.0的单点登录轻松搞定。
OAuth2.0的单点登录 能给个学习的资料或链接么
可以使用webapi,最好单独做一套身份验证系统,可以使用Form验证
Net Romting
拆分系统,拆分数据库,多项目REST API交互 ,授权OAuth2.0 ,根据情况结合MQ , 所有的服务端和UI都独立项目.,所有业务接口实现分离注入。这样业务就能兼容所有设备或者平台 并且后面扩展维护什么都方便
内部集成WCF,外部集成WebApi
http://git.oschina.net/lishilei0523/ShSoft.UAC
谢谢