线下线上对接的一种思路(本地erp与线上电子商务平台对接)
目前很多公司都希望本地的ERP能够与线上的电子商务平台进行对接。
但是很多的线下ERP系统商不愿意修改代码来做相应的对接,或者觉得太话费成本。
而对于企业本身,又会有很多的特殊需求。
下面略述一家进口商品企业的线上线下整合方案。
线下系统使用深圳思迅的门店管理系统,使用VS.Net平台开发,数据库使用MSQL2005,BS结构(内部管理用)+CS结构(门店POS开单),局域网部署
线上系统使用本地的一家电子商务平台提供商的商城系统(通过该平台,让分销商可以直接采购下单,查询库存,以及及时下载最新的新品等等)。使用NetBeans平台开发(PHP,C++,各种服务整合),数据库使用MYSQL+Redis,BS结构+SAAS,对外开放。
内部网络,必须限制外网的访问,各门店间使用VPN设备进行组网。那么就只允许内部访问外部,不允许外部直接访问内部系统。
线上电商平台,希望各个对接的系统都有独立的接口,通过为每个接口打通,来实现各种互通。
策略如下:
1,各个线下系统不可能每个都去修改原有的程序代码,但是数据库是灵活存在,对内部来说是共享的,在熟悉当前业务的前提下,可以通过监控数据库的操作来实时把握信息的交互。例如:通过mssql的sqlDependency功能来监控触发器等等,监控会员的注册、商品的增删改、订单的提交,库存的出入库,盘点等等。
2,通过提供统一的Windows服务(可以使用WCF封装具体的业务处理,提供相应的接口供外网访问:soap,json,rest等等通过http协议或者tcp协议进行交互通信)。
3,电子商务平台通过redis隔离外网与内网的交互。外网数据通过swool进行解析,并把数据和任务交付给redis,再通过某个进程将相应的业务逻辑更新到平台里。
4,在电子商务平台的接口管理里,实现新的第三方接口的申请和授权,从而达到数据的交互。
问题点:
1,线下业务逻辑的抽象要做到位,避免造成频繁的版本更新(会员,商品,订单,库存:新增,修改,删除)
2,使用gateway做好访问的权限控制
3,要有消息队列,避免通信异常,造成假死。
4,做好日志记录工作。
线下线上对接的一种思路(本地erp与线上电子商务平台对接)的更多相关文章
- 关于解决python线上问题的几种有效技术
工作后好久没上博客园了,虽然不是很忙,但也没学生时代闲了.今天上博客园,发现好多的文章都是年终总结,想想是不是自己也应该总结下,不过现在还没想好,等想好了再写吧.今天写写自己在工作后用到的技术干货,争 ...
- 解决ArcGIS中因SDE或数据库配置问题而导致服务宕掉的一种思路
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1.背景 最近连续有两个项目现场出现了AGS服务荡掉的问题,一个是通州 ...
- CSS实现水平垂直同时居中的5种思路
× 目录 [1]水平对齐+行高 [2]水平+垂直对齐 [3]margin+垂直对齐[4]absolute[5]flex 前面的话 水平居中和垂直居中已经单独介绍过,本文将介绍水平垂直同时居中的5种思路 ...
- CSS实现垂直居中的4种思路
× 目录 [1]line-height [2]vertical-align [3]absolute [4]flex 前面的话 相对于水平居中,人们对于垂直居中略显为难,大部分原因是vertical-a ...
- CSS实现水平居中的4种思路
× 目录 [1]text-align [2]margin [3]absolute [4]flex 前面的话 水平居中是经常遇到的问题.看似方法较多,条条大路通罗马.但系统梳理下,其实都围绕着几个思路展 ...
- 点击页面div弹窗以外隐藏的两种思路
在本文为大家介绍两种思路实现点击页面其它地方隐藏该div,第一种是对document的click事件绑定事件处理程序.. 第一种思路分两步 第一步:对document的click事件绑定事件处理程序, ...
- 把JSON数据载入到页面表单的两种思路(对easyui自带方法进行改进)
#把JSON数据载入到页面表单的两种思路(对easyui自带方法进行改进) ##背景 项目中经常需要把JSON数据填充到页面表单,一开始我使用easyui自带的form load方法,觉得效率很低,经 ...
- 点击页面其它地方隐藏该div的两种思路
思路一 第一种思路分两步 第一步:对document的click事件绑定事件处理程序,使其隐藏该div 第二步:对div的click事件绑定事件处理程序,阻止事件冒泡,防止其冒泡到document,而 ...
- C++关于数字逆序输出的两种思路,及字符串逆序输出
C++关于数字逆序输出的两种思路,及字符串逆序输出 作者:GREATCOFFEE 发布时间:NOVEMBER 15, 2012 分类:编程的艺术 最近在跟女神一起学C++(其实我是不怀好意),然后女神 ...
随机推荐
- Python类的实例属性详解
实例属性 1.类被实例化后才会具有的属性 2.一般在_init_()方法中创建并初始化 3.直接使用即定义:self.<属性名> 4.引用方法:self.<属性名> 5.sel ...
- 用Js+css3实现图片旋转,缩放,裁剪,滤镜
还是前端图片的老话题,花了半天时间,东拼西凑,凑出个demo,优点在于代码少,核心代码就6行,目前刚做了旋转,缩放,裁剪,滤镜要js做,网络上也有现成的代码, 但是想做到自定义的滤镜咋办呢?这还要从底 ...
- lr各种问题以及解决办法
LR 脚本为空的解决方法: 1.去掉ie设置中的第三方支持取消掉 2.在系统属性-高级-性能-数据执行保护中,添加loadrunner安装目录中的vugen.exe文件 遇到flight界面为空的解决 ...
- SPSS数据分析—协方差分析
我们在实际工作中为了准确的分析问题,经常会收集多个变量,这些变量之前存在相互影响,导致分析的因素混杂,影响分析结果,为了获得准确的实验效应,我们需要控制其中一些影响因变量的变量,这些变量称为就协变量, ...
- toolkit学习笔记
- 点击a标签,跳转到iframe中,并在iframe中显示指定的页面
点击a标签,跳转到iframe中,并在iframe中显示指定的页面 1.用a标签的target属性 <iframe id="myFrameId" name="myF ...
- mybaties 查询 语句正确 但是查不到结果
控制台输出的语句拿到数据库查询就有数据,但是一直显示不出来 也不报错 后来 百度发现数据库连接不对 因为其中引用了两个数据库 所有写混了 ---------------------- ...
- Swift 01.String
1.字符串拼接 var num1 = "hello,world" var name = "xiaoming" var age = let student = n ...
- Java设计模式系列2--工厂方法模式(Factory Method)
2014-02-26 09:56:45 声明:本文不仅是本人自己的成果,有些东西取自网上各位大神的思想,虽不能一一列出,但在此一并感谢! 工厂方法模式分为三种: 1. 普通工厂模式 建立一个工厂类,对 ...
- PB中用oracle的存储过程返回记录集做数据源来生成数据窗口,PB会找不到此存储过程及不能正常识别存储过程的参数问题(转)
(转)在PB中用oracle的存储过程返回记录集做数据源来生成数据窗口 首先oracle的存储过程写法与MSSQL不一样,差别比较大. 如果是返回数据集的存储过程则需要利用oracle的包来定义游标. ...