目标:希望数据库服务器在更改时能通知相应的客户机,同时还得判断客户机连接是否正常。背景:数据库同时用于Web方式访问(不判断web用户的连接情况)。局域网的用户大约为10个左右。Web用户可能几百个到几千个。方案一:纯数据库,客户端定时查询获取相应的信息。由于需要知道各个客户端是否连接正常,需要一个表,客户机定时更新一个字段,记录当前时间,以是否超时判断是否掉线。
优点是编程相对简单。方案二:数据库+Socket,在更改数据库的同时,给Socket服务器发送一条消息,由Socket服务器发送消息到相应的客户机,再由客户机读取数据库。判断连接是否正常依靠Socket定时互相通讯来判断。
优点是减轻了数据库服务器的负担。希望大家结合性能,速度等帮忙决策,谢谢。预祝大家春节快乐!
优点是编程相对简单。方案二:数据库+Socket,在更改数据库的同时,给Socket服务器发送一条消息,由Socket服务器发送消息到相应的客户机,再由客户机读取数据库。判断连接是否正常依靠Socket定时互相通讯来判断。
优点是减轻了数据库服务器的负担。希望大家结合性能,速度等帮忙决策,谢谢。预祝大家春节快乐!
对于Web用户,只能定时调用WebService获取相应的信息了,否则维护一个庞大的连接列表也不轻松。这对于两者来说是一样的。Web用户和局域网用户功能是不同的。为什么不把数据一起发过去?是因为每个人的操作要做记录,而且,告诉相应的客户机后,也不一定需要其立即进行操作。
这种情况下,相对于方案一,服务器的复合是否增大?