当前位置:编程学习 > VB >>

500分恳请开各位大哥给俺点意见,请高手进!谢谢!

客户提出的要求如下:

1 要在几个加盟店之间使用一个统一会员系统,加盟店A的会员可以在加盟店B中进行刷卡消费
2 会员卡为不记名卡,刷卡时需要密码. 会员卡可以转借他人使用. 也可以将若干个人的消费统一到一张卡上消费.
3 会员卡中存有现金,刷卡消费时自动从卡中扣除.
4 根据一次性存入现金的数额,将持卡人分为 A B C D 类会员,分别给予不同的打折优惠.
5 会员要可以通过网络查询本人的消费记录和余额,加盟店要通过网络进行产品宣传
6 各个分店要可以查询本店的 会员\消费  财务统计 库存统计.总部要可以查看到各个分店的数据和统计
7 客人到各个分店可以现金消费也可以 划卡消费
8 每个分店配有两台电脑 每台电脑上联有 刷卡器  客显  钱柜
9 为了防止网路出现问题,要求在网络出现问题的时候程序仍然可以进行正常的工作,当网络恢复以后再将数据一起提交总服务器.

我的一些想法:

1 收银部分的POS系统 采用 C/S 程序
2 会员对刷卡消费记录的查询采用 B/S 程序
3 总部对各加盟店的数据监控 采用 B/S 程序
4 通过网站宣传加盟店
5 为了使各个分店的会员能够在不同的加盟店间进行消费 所以将几个加盟店的数据统一放在一个数据库服务器中,各个分店本地要有本地的数

据库,定期对总服务器进行备份,防止网络出现问题时可以使用本地数据.
6 服务器软件环境 : win2003 + SQL server 2000 + IIS

现在有以下几个问题向要请教各位:

1 安全性
  由于会员卡中存放现金,所以在安全的方面要求比较严格 阿阿 那时钱哪.
  主要是以下几点:
  数据库直接放在托管的机房里是否安全? 为了防止攻击应该做哪些的防护措施 ?
  
  由于有C/S结构程序,就涉及到了 应用程序连接数据库服务器的问题,有这么几种方案请大家给个看法:
  A 通过 ADO/ADO.NET 连接SQL SERVER 数据库
  B 采用 soap/web services 技术

 B当然是比较理想但是开发强度比较大 A不用写太多的额外程序但是怕安全性不好
 
  本来想 将WEB服务器和数据库服务器分开,让他们连一个居域网,加盟店通过VPN连接数据库服务器.由于投入有限 只能将 web 服务器 和

数据库服务器都放在一台服务器上 , 这样做当然是不太好,大家给个建议看看能不能折中一下,或者即使在一台服务器上也能更安全些, 谢


 
2 稳定性
 网络的连接存在一定的不稳定性,如果网络出现问题,势必会给加盟店的营业产生影响.所以我想除了有一个总的数据库外,在各个分店的

客户机上再做个备份数据库,这样即使网络断了也可以使用本地的数据,在网络恢复以后再把数据给传到总服务器上.
啊啊 这仅仅是个想法,个人觉得还不成熟.我想听听大家的意见,看看这样可行不啊.如果这样不可行 请那位大哥给个思路 谢谢

  
3 架构的问题
  以上写的这些都是基于多个客户端连接一个网络数据库 ,这样的好处是数据的实时性,但是数据的安全性 我总是不太放心
  我想请教一下那位大哥开发过这样的系统?有没有别的架构可以实现?或者有什么经验可以借鉴 谢谢


4 POS系统小弟以前没有接触过,对控制 刷卡机 客现 小打印机 和 钱柜 不太熟悉 那位有这方面的资料给俺借鉴一下? 
 C#/VB.NET/VB/PB的都行哈  

这个活是昨天跟我谈的,上面想让我出个解决方案 啊啊 以上只是小弟的一些想法,还不成熟 . 不妥的地方还望各位给予指正.
如果那位大哥开发过这样的系统,请一定要给个意见啊  

谢谢 谢谢 谢谢 谢谢 哈
--------------------编程问答-------------------- 友情up --------------------编程问答-------------------- 其他的分在这里哈
http://topic.csdn.net/u/20071018/16/f7fa302a-5c27-4362-ad78-53f653221368.html
http://topic.csdn.net/u/20071018/16/097ca942-021b-42f4-a5a1-c82b67e02770.html
http://topic.csdn.net/u/20071018/16/bd8941c2-3091-43f4-8e23-e933f610cf81.html
http://topic.csdn.net/u/20071018/16/54bcc819-9b4b-402f-8d69-19a70bd09f97.html
http://topic.csdn.net/u/20071018/16/e038755b-0543-4f7a-8a77-8d58d9349f35.html --------------------编程问答-------------------- 顶起来 --------------------编程问答-------------------- 我很佩服你..真的 楼主 --------------------编程问答-------------------- up --------------------编程问答-------------------- 大家也可以给俺谈谈过于这套系统的其他想法 , 帮俺开拓一下思路  谢谢 --------------------编程问答-------------------- 顶起来 --------------------编程问答-------------------- jf --------------------编程问答-------------------- 问题太大了,帮顶学习了 --------------------编程问答-------------------- 同上............. --------------------编程问答-------------------- 帮顶也谢谢哈 --------------------编程问答-------------------- 一两句话说不完啊 
还是占个位置接分 --------------------编程问答-------------------- 那这么说把
要相会员卡在任何议价连锁店都可以使用
那除了用实时的数据外 还有别的方法吗?
前提是要保证会员卡里的人民币数量的准确 啊啊 

看来是我想得简单了 55555  这可咋办泥 



--------------------编程问答-------------------- 那位大哥接触过IC卡系统
这个 IC卡 系统造价 是多少啊 ? 能大概给个价格范围吗 ? --------------------编程问答-------------------- IC卡的想法被领导否决了 5555 
理由很简单 那现有的设备和发出去的卡怎么办?  啊啊 55555 --------------------编程问答-------------------- 如果采用 一个中心数据库 回碰到以下几种问题 

1 数据安全性问题 
  如果直接将数据库放在广域网里,对数据的安全不是很放心. 不知道大家是怎么看的 
  另一个就是放在局域网里,然后使用VPN技术将各地的分店连到这个局域网里.数据的操作只能在局域网里进行,这样感觉回安全点.毕竟数据库不能被外网访问. 

2 网络的问题 
  说句不好听的话,银行的网络还会出问题呢,何况是互连网呢.所以就要必须考虑好,如果一旦网络或者数据库服务器出现问题怎么办? 不能说网络出现问题就不做生意了是不,  如果使用本地数据库+网络数据库这种方法,似乎是可以解决这样的问题,但是如果数据不能实时 那就有可能出现会员卡透支情况 啊啊  


现实就是这么无奈啊 硬件设备方面的投入不会很大,还想保留现有的设备,还想要做数据互通,如果是一般的数据也就罢了,还是关于钱的数据 .  TMD 这可咋办好呢 ? 大家能不能给个思路或是建议啊 

谢谢 谢谢   --------------------编程问答-------------------- 顶起来 --------------------编程问答-------------------- 顶起来 --------------------编程问答-------------------- 建议用一个数据库,要不数据很难统一 --------------------编程问答-------------------- 网络的问题  
  说句不好听的话,银行的网络还会出问题呢,何况是互连网呢.所以就要必须考虑好,如果一旦网络或者数据库服务器出现问题怎么办? 不能说网络出现问题就不做生意了是不,  如果使用本地数据库+网络数据库这种方法,似乎是可以解决这样的问题,但是如果数据不能实时 那就有可能出现会员卡透支情况 啊啊   

--------------------------------------------------------------------------

可能也只有用这种方法了,因为网络问题是不能解决的,只有从软件上想办法了
如果随时更新本地数据库,现会员卡透支的风险应该也是很小的,理论上只有在网络出现问题,数据不能更新这一段时间内,会员卡在不同的地方刷卡,才会有透支的风险,如果只是短暂的网络问题,风险不大。
因此是否可设定时间限制,在本地数据多长时间内无法更新则暂停会员卡,这样来折中一下,网络出现问题就不做生意的情况会很少发生,而风险也不会太大。 --------------------编程问答-------------------- 谢谢 amongwang

大家继续哈
--------------------编程问答-------------------- 顶起来 --------------------编程问答-------------------- 顶起来 --------------------编程问答-------------------- 继续顶起来 --------------------编程问答-------------------- 给你点建议

1、每个分店设一台服务器,另设一台总服务器
2、开发分店服务器的中间层和总服务器的中间层,分店服务器的做用是将分店内的数据备份以及将数据提交至总服务器。
3、分店服务器只开放中间层所需端口,总服务器只开设80端口(供WEB服务使用)和中间层所设定的端口,这样安全性会高一点。
4、服务器建议不要托管,维护时很不方便。
5、分店服务器中间层在和总服务器通讯中断时只做备份。
6、如果是通过读写卡内金额的方式判断客户账户余额的话,可以在网络中断时继续营业,否则会超额的。工作站向分店服务器,分店服务器向总服务器每天定时传送未提交数据。
7、为防止攻击,有条件的话上个硬防火。
8、工作站上可以用SyBase数据库做备份。

给你的这个建议硬件投资比较大,软件工程量也比较多,但安全性会高很多,如果你服务器够牛,中间层、WEB服务、数据库全放一服务器上也没有问题。
补充:VB ,  数据库(包含打印,安装,报表)
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,