目前很多公司都希望本地的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与线上电子商务平台对接)的更多相关文章

  1. 关于解决python线上问题的几种有效技术

    工作后好久没上博客园了,虽然不是很忙,但也没学生时代闲了.今天上博客园,发现好多的文章都是年终总结,想想是不是自己也应该总结下,不过现在还没想好,等想好了再写吧.今天写写自己在工作后用到的技术干货,争 ...

  2. 解决ArcGIS中因SDE或数据库配置问题而导致服务宕掉的一种思路

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1.背景 最近连续有两个项目现场出现了AGS服务荡掉的问题,一个是通州 ...

  3. CSS实现水平垂直同时居中的5种思路

    × 目录 [1]水平对齐+行高 [2]水平+垂直对齐 [3]margin+垂直对齐[4]absolute[5]flex 前面的话 水平居中和垂直居中已经单独介绍过,本文将介绍水平垂直同时居中的5种思路 ...

  4. CSS实现垂直居中的4种思路

    × 目录 [1]line-height [2]vertical-align [3]absolute [4]flex 前面的话 相对于水平居中,人们对于垂直居中略显为难,大部分原因是vertical-a ...

  5. CSS实现水平居中的4种思路

    × 目录 [1]text-align [2]margin [3]absolute [4]flex 前面的话 水平居中是经常遇到的问题.看似方法较多,条条大路通罗马.但系统梳理下,其实都围绕着几个思路展 ...

  6. 点击页面div弹窗以外隐藏的两种思路

    在本文为大家介绍两种思路实现点击页面其它地方隐藏该div,第一种是对document的click事件绑定事件处理程序.. 第一种思路分两步 第一步:对document的click事件绑定事件处理程序, ...

  7. 把JSON数据载入到页面表单的两种思路(对easyui自带方法进行改进)

    #把JSON数据载入到页面表单的两种思路(对easyui自带方法进行改进) ##背景 项目中经常需要把JSON数据填充到页面表单,一开始我使用easyui自带的form load方法,觉得效率很低,经 ...

  8. 点击页面其它地方隐藏该div的两种思路

    思路一 第一种思路分两步 第一步:对document的click事件绑定事件处理程序,使其隐藏该div 第二步:对div的click事件绑定事件处理程序,阻止事件冒泡,防止其冒泡到document,而 ...

  9. C++关于数字逆序输出的两种思路,及字符串逆序输出

    C++关于数字逆序输出的两种思路,及字符串逆序输出 作者:GREATCOFFEE 发布时间:NOVEMBER 15, 2012 分类:编程的艺术 最近在跟女神一起学C++(其实我是不怀好意),然后女神 ...

随机推荐

  1. SSH项目Class类的注解与属性的注解

    经过一段日子对SSH的学习,为了有利于随时能熟练的把一个SSH的项目快速的搭建起来,并且在报错的时候,将报错信息和解决 方案记录下来,每天一次的代码练习已成为家常便饭 所以,在反复练习的时候,发现Sp ...

  2. setInterval和setTimeout的区别

    setInterval会每隔指定的毫秒数后反复执行指定代码. setTimeout只会在指定的毫秒数后执行一次指定代码. setInterval的用法: // 创建(创建后即开始计时) var int ...

  3. jquery ui学习笔记

  4. 读《程序员的SQL金典》[4]--SQL调优

    一.SQL注入 如果程序中采用sql拼接的方式书写代码,那么很可能存在SQL注入漏洞.避免的方式有两种: 1. 对于用户输入过滤敏感字母: 2. 参数化SQL(推荐). 二.索引 ①索引分类 聚簇索引 ...

  5. 介绍开源的.net通信框架NetworkComms框架之九 合并DLL

    原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架  作者是英国人  以前是收费的 目前作者已经开源  许可是 ...

  6. SqlServer和MySQL游标学习

    一 sqlserver游标使用 /*** 游标的使用  讲了这个多游标的优点,现在我们就亲自来揭开游标的神秘的面纱.  使用游标的顺序: 声名游标.打开游标.读取数据.关闭游标.删除游标. 1.3.1 ...

  7. Leetcode 171 Excel Sheet Column Number 难度:0

    https://leetcode.com/problems/excel-sheet-column-number/ class Solution { public: int titleToNumber( ...

  8. js 判断数据类型的方法及实现

    转载自 http://blog.csdn.net/xujiaxuliang/archive/2009/10/21/4708353.aspx null 与 undefined 区别: null 是js的 ...

  9. OC基础--Hello Shit

    /*  Foundation.h为主头文件, 主头文件中又拷贝了该工具箱中所有工具的头文件, 我们只需要导入主头文件就可以使用该工具箱中所有的工具, 避免了每次使用都要导入一个对应的头文件  工具箱的 ...

  10. GSM模块fibocom G510使用记录

    一、背景:最近在做一个单定位的产品,对低功耗要求较高,选用了G510系列的模块。现在仅做了三块样板,先熟悉下。 二、优点:1.功耗低,和西门子的BGS2差不多;2.注册网络指令简单;3.其他有待发现 ...