SOA
SOA是Service Oriented Architecture的缩写,译为面向服务架构,是分布式架构的一种表现
RPC
RPC是Remote Procedure Call的缩写,译为远程过程调用,其本质是一个计算机通信协议,该协议允许运行在一个地址空间的程序(像调用本地程序一样)调用另一个地址空间的程序
RPC的实现需要解决通讯寻址、序列化与反序列化、消息总线等问题
技术实现
1.EJB
2.Web Service
3.Dubbo
表现层 - provider:页面及视图逻辑
服务层 - consumer:业务逻辑
4.Spring Cloud
项目之间互相调用
1.HttpClient
2.RestTemplate
3.Ajax跨域访问
RMI
RMI是Remote Method Invocation的缩写,译为远程方法调用,其实现是利用Java对象序列化机制
EJB
EJB是Enterprise JavaBean的缩写,译为企业级JavaBean,其是用来构筑企业级应用的服务器端可被管理的组件,也就是说,EJB是运行在一个独立的服务器上、封装了业务逻辑的组件,客户端可以以C/S架构对该组件进行调用
EJB技术基础是RMI
SSO
SSO是Single Sign On的缩写,译为单点登录,广义上也包括了Single Sign Off【单点退出】
SSO是一种身份验证方式,让用户仅需通过一组凭证就能登入多个资源或应用程序
1.单体系统的登录
由于HTTP是无状态的协议,于是为了让服务器识别用户,W3C提出了cookie/session解决方案:浏览器请求服务器时,服务器会向浏览器发送一个名为JSEEIONID、值为session的id值的cookie,浏览器再次请求服务器时会附带发送该cookie,服务器通过session进行检验
2.分布式系统的登录
由于session是依赖于tomcat的,也就是说,同一个session在不同的tomcat间是不共享的,而分布式系统是存在多个tomcat的,所以如果要实现分布式系统的同一登录(单点登录),需要解决一下问题
- session共享问题
- cookie跨域问题
解决session共享的方案:
3. tomcat集群实现session全局复制
4. 根据请求IP进行hash映射到对应的tomcat
5. 使用redis模拟session
解决cookie跨域的方案:
6. 客户端解析cookie中的token,然后将token放入请求
7. 设置cookie的domain,实现多个域名共享cookie
8. 将token保存在sessionStorage中
CMS
CMS是Content Management System的缩写,译为内容管理系统,服务于内容管理者来提交、修改、审批、发送内容(内容包括文件、图表、视频等数据信息)
CRM
CRM是Customer Relationship Management的缩写,译为客户关系管理,其目标是吸引新客户关注并转化为企业付费用户、提高老客户留存率并介绍新用户
CRM运营的一般内容:售后关怀(物流关怀、售后链路、使用教程、退货关怀等)、会员运营、EDM等
EDM
EDM有多重含义,在此处主要是指Email Direct Marketing的缩写,译为电子邮件营销,指利用电子邮件作为其传递商业信息到客户的网络营销形式
WMS
WMS是Warehouse Management System的缩写,译为仓库管理系统,通过入库业务、出库业务、仓库调拨和虚仓管理等功能,对批次管理、物料对应、库存盘点、质检管理、虚仓管理和即时库存管理等功能综合运用,有效控制并跟踪仓库业务的物流和成本管理全过程
B/S架构和C/S架构
B/S是Browser/Server的缩写,译为浏览器/服务器
C/S是Client/Server的缩写,译为客户端/服务器
常见的电商行业模式
1.B2B
B2B是Business to Business的缩写,其中2是to的谐音,译为企业对企业
代表企业:阿里巴巴、慧聪网
2.B2C
B2C是Business to Customer的缩写,其中2是to的谐音,译为企业对客户
代表企业:京东、天猫
3.C2C
C2C是Customer to Customer的缩写,其中2是to的谐音,译为客户对客户
代表企业:淘宝
4.O2O
O2O是Online to Online的缩写,其中2是to的谐音,译为线上对线下
代表企业:美团、口碑
5.P2P
P2P是Peer to Peer的缩写,其中2是to的谐音,译为点对点
代表企业:个人金融借贷类型企业
6.C2F
C2F是Customer to Factory的缩写,其中2是to的谐音,译为客户对工厂
代表企业:网易严选、必要商城