关于C/S非三层部署到Internet上面

时间:2022-03-21 16:21:28
是这样的,目前我有一个小系统想可能需要部署到Internet上面,但还是在局域网使得多些。
目前MySQL数据库通过3306端口开放到局域网,在硬件防火墙上面做了NAT转换,用一个不常见的端口转换到内网的3306上面了,如果不需要在Internet上面访问随时可以用防火墙禁止掉。
现在想快速开发出来,如果不弄三层有影响吗?
目前测试速度还可以。

11 个解决方案

#1


mysql服务器有固定访问IP应该可以吧   

#2


应该没问题

只是比3层缺少一些优点:
客户端免数据库驱动,优点之一
客户端无须存数据库密码,也是很重要的优点
数据库服务器的端口不再暴露在公网,也是很重要的优点
数据库并发连接数大大减少,也是很有价值的优点
客户端无须保存sql了,sql都由应用服务程序生成、使用,也是一个优点

#3


谢谢。
MySQL是有固定IP的,而且有硬件防火墙,软件防火墙,有路由器,可以任意的做NAT,映射端口等。我现在就是想快速。
另sz_haitao说的问题我也考虑过,这是不是首要考虑的问题,可以通过防火墙和VPN解决。
主要就是怕Internet网络不畅的情况下是否会有什么特殊考虑的呢?

#4


各用户间交互不多的话
  为减少频繁访问远程数据库服务器, 可以做个本地数据缓存, 存放常用数据和用户操作数据
  这样可避免数据库连接失败时, 通过本地数据缓存可以继续工作
各用户间交互多的话
  想法儿保证服务器访问正常吧
  没什么太好的办法 /这是废话  :)
  

#5


这样实现方式不错,改三层一般需要把业务移到服务端,改动不小。

#6


引用 5 楼 SQLDebug_Fan 的回复:
这样实现方式不错,改三层一般需要把业务移到服务端,改动不小。


我实现过一种极端的3层:sql什么的都还是在客户端,应用服务器只是一个通用的数据库“网关”
3层的优点,只是没有最后一条而已

#7


引用 6 楼 sz_haitao 的回复:
引用 5 楼 SQLDebug_Fan 的回复:这样实现方式不错,改三层一般需要把业务移到服务端,改动不小。

我实现过一种极端的3层:sql什么的都还是在客户端,应用服务器只是一个通用的数据库“网关”
3层的优点,只是没有最后一条而已


哈   你这是胖客户端

#8


引用 7 楼 simonhehe 的回复:
引用 6 楼 sz_haitao 的回复:
引用 5 楼 SQLDebug_Fan 的回复:这样实现方式不错,改三层一般需要把业务移到服务端,改动不小。

我实现过一种极端的3层:sql什么的都还是在客户端,应用服务器只是一个通用的数据库“网关”
3层的优点,只是没有最后一条而已

哈   你这是胖客户端


绿色客户端,协议是http,无须数据库驱动
是b/s和c/s的取长补短:c/w,即client/webserver

#9


胖客户端现在也有流行的趋势,手机上的APP就是胖客户端。

#10


好或不好要根据具体项目环境。

#11


谢谢大家,结贴

#1


mysql服务器有固定访问IP应该可以吧   

#2


应该没问题

只是比3层缺少一些优点:
客户端免数据库驱动,优点之一
客户端无须存数据库密码,也是很重要的优点
数据库服务器的端口不再暴露在公网,也是很重要的优点
数据库并发连接数大大减少,也是很有价值的优点
客户端无须保存sql了,sql都由应用服务程序生成、使用,也是一个优点

#3


谢谢。
MySQL是有固定IP的,而且有硬件防火墙,软件防火墙,有路由器,可以任意的做NAT,映射端口等。我现在就是想快速。
另sz_haitao说的问题我也考虑过,这是不是首要考虑的问题,可以通过防火墙和VPN解决。
主要就是怕Internet网络不畅的情况下是否会有什么特殊考虑的呢?

#4


各用户间交互不多的话
  为减少频繁访问远程数据库服务器, 可以做个本地数据缓存, 存放常用数据和用户操作数据
  这样可避免数据库连接失败时, 通过本地数据缓存可以继续工作
各用户间交互多的话
  想法儿保证服务器访问正常吧
  没什么太好的办法 /这是废话  :)
  

#5


这样实现方式不错,改三层一般需要把业务移到服务端,改动不小。

#6


引用 5 楼 SQLDebug_Fan 的回复:
这样实现方式不错,改三层一般需要把业务移到服务端,改动不小。


我实现过一种极端的3层:sql什么的都还是在客户端,应用服务器只是一个通用的数据库“网关”
3层的优点,只是没有最后一条而已

#7


引用 6 楼 sz_haitao 的回复:
引用 5 楼 SQLDebug_Fan 的回复:这样实现方式不错,改三层一般需要把业务移到服务端,改动不小。

我实现过一种极端的3层:sql什么的都还是在客户端,应用服务器只是一个通用的数据库“网关”
3层的优点,只是没有最后一条而已


哈   你这是胖客户端

#8


引用 7 楼 simonhehe 的回复:
引用 6 楼 sz_haitao 的回复:
引用 5 楼 SQLDebug_Fan 的回复:这样实现方式不错,改三层一般需要把业务移到服务端,改动不小。

我实现过一种极端的3层:sql什么的都还是在客户端,应用服务器只是一个通用的数据库“网关”
3层的优点,只是没有最后一条而已

哈   你这是胖客户端


绿色客户端,协议是http,无须数据库驱动
是b/s和c/s的取长补短:c/w,即client/webserver

#9


胖客户端现在也有流行的趋势,手机上的APP就是胖客户端。

#10


好或不好要根据具体项目环境。

#11


谢谢大家,结贴