返回首页

web端常用架构?

237 2025-02-10 15:09 admin

一、web端常用架构?

一、单DB架构

  单DB架构一般就是nginx直接upstream请求到后端Tomcat,扩容时基本是增加新的Tomcat实例,然后通过Nginx负载均衡upstream过去,此时数据库还不是瓶颈,但是当访问量达到一定级别后数据库的压力就上来了,单个数据库可能扛不住,可以通过分表分库或者读写分离加缓存来解决。

二、DB+Cache/数据库读写分离架构

   此时通过使用数据库读写分离或者Redis这种缓存来支撑更大的访问量,但是使用缓存会存在与数据库数据不一致的问题,或者Redis不能直接命中数据库导致数据库压力过大,可以考虑使用Redis的主从或者用一致性哈希算法做分片的Redis集群。使用缓存这种架构,要求应用对数据一致性的要求不是很高。

三、OpenResty+Local Redis+Mysql集群架构

    OpenResty首先通过Lua读取本机Redis缓存,如果命不中,则回源到后端Tomcat集群,后端Tomcat集群再读取Mysql数据库,Redis都是安装到和OpenResty同一台服务器上,OpenResty直接读取本机可以减少网络延时。Redis通过主从方式同步数据。

四、OpenResty+Redis集群+Mysql集群架构

   此时架构与之前架构不同的是,此时我们使用一致性哈希算法实现Redis集群,而不是读取本机Redis,保证其中一台不可用时,只有很少的数据会丢失,防止击穿到数据库。Redis集群分片可以使用Twemproxy如果Tomcat实例很多的话,就要考虑Redis和Mysql链接数问题,因为大部分Redis/Mysql客户端都是通过连接池实现,此时链接数会成为瓶颈,一般方法是通过中间件来减少链接数。

   此时的问题就是Twemproxy实例众多,应用维护、配置困难,需要在这之上做负债均衡,比如,通过LVS/HaProxy实现VIP(虚拟Ip),可以做到切换对应用透明,故障自动转移。还可以通过实现内网DNS来做其负载均衡。

二、web系统架构推荐?

WEB程序的架构基本上可以分成以下三类:

一 、基于“组件”(Component ,GUI设计也常称控件)、事件驱动的架构,最常见的是微软的.NET。基本思想是把程序分成很多组件,每个组件都可以触发事件,调用特定的事件处理器来处理(比如在一个HTML按钮上设置onClick事件链接到一个PHP函数)。这种设计远离HTTP,HTTP请求完全抽象,映射到一个事件。

二 、基于“WEB页面/文件”,例如CGI和PHP/ASP程序。程序的文件分别存储在不同的目录里,与URL相对应。当HTTP请求提交至服务器时,URL直接指向某个文件,然后由该文件来处理请求,并返回响应结果。

三 基于“动作”(Action)。这是MVC架构的WEB程序所采用的最常见的方式。目前主流的WEB框架像Struts、Webwork(Java),Ruby on Rails(Ruby),Zend Framework(PHP)等都采用这种设计。URL映射到控制器(controller)和控制器中的动作(action),由action来处理请求并输出响应结果。这种设计和上面的基于文件的方式一样,都是请求/响应驱动的方案,离不开HTTP。

三、HTML属于web,PHP呢?

html属于web前端页面的开发,而php是属于后端的程序开发。 后端和前端是有关联性的,如果你要学习你只需要掌握web前端的开发技术就可以了。或者你直接只学习php开发程序就可以,因为在很多公司的分分工是很明确的,所以做好自己的工作即可。 但是如果你要创业或者自己做项目,可以全方位学习下也可以的!

四、web应用架构是什么?

1、表示层(user interface layer):顾名思义,这个是负责与用户交互的,是用户操作与获取服务的接口。这一层一般由前端和后端的同学一同参与开发。(注意:这里所说的前端对于普通用户来说,他们仍然需要到服务器请求相应的html文档等)。前端负责html、css、javascript这些展示的维度。但是像servlet,action,screen等控制维度的由后端同学开发。

2.业务层(business logic layer):有时候我们也称为service层、逻辑层。这一层是整个Web应用的核心内容,包括我们想要提供给用户的所有服务。比如说用户登录/注册都是一个服务。

3.数据访问层(data access layer):有时候我们也称为DAO层,持久层。这一层是提供给业务层调用的。负责与数据库或是文件等持久存储媒介打交道。

五、eclipse怎么打开php web工程?

一、下载安装Eclipse的PHP插件phpeclipse

                   

二、安装Eclipse的PHP插件

  插件下载完成之后,解压,然后把site.xml删掉(大部分插件不用删这个文件,但是PHPEclipse必须删),最后把整个文件夹复制到Eclipse的dropins文件夹里面,重启Eclipse即可。

三、在Eclipse新建PHP工程和新建PHP文件

  在插件安装成功的前提下,新建工程和新建文件的时候,都能见到PHP相关的选项。然后在PHP文件里随便写几行代码。

六、php web为何要做前后台?

目前主流开发形式为前后端分离模式

七、大型网站用PHP怎么架构?

大型网站,php往往只是一部分,不可能全用php,他不是全能全能,放到最适合他的地方才能发挥他最大的作用,做为胶水型语言在大型网站中使用,再适合不过,以上为个人看法,仅供参考。163,sina,sohu都有用到。

八、web前端和php哪个好?

这个没有明确的好坏,我个人比较喜欢web前端。

Web前端是一种应用场景,PHP是一种语言。各种技术的共同汇集,才能实现web应用,PHP是其中的一个技术分支而已。如果你逻辑思维比较好,可以偏向PHP方向;如果你是对用户体验和设计感兴趣,可以学WEB前端。PHP是后端程序语言,跟数据库打交道比较多;前端偏交互设计、UI展现。

九、web的三级架构?

web层:

接收客户端传来的参数

把参数封装成对象

把封装好的对象/数据传给service

根据service层的处理结果决定把那个页面返回给客户端

service层

需要定义接口

接收web层传过来的对象/数据(如果有的话)

根据这些信息进行业务逻辑处理

例如:完成一个登录功能,web层接收到用户名和密码之后,把数据传给service层,service层就要根据这些信息来判断用户名是否存在、密码是否正确、用户是否有权限、用户状态当前是否可用、用户是否推送信息、是否给用户相关提示等,这些都属于登录的业务逻辑处理

service在处理业务逻辑的时候,常常需要和数据库交互,这时候就需要调用dao层的相关方法来完成

service层根据dao层方法的返回结果,进一步的完成业务逻辑处理

业务逻辑处理完之后,要通过一定的方式把业务逻辑处理的结果返回给web层,以便让web层决定接下来该那个页面呈现给用户

dao层:和数据库交互,将数据持久化保存。

需要定义接口

接受service传的参数(如果有的话)

把交互结果返回给service层

十、web的工作架构是什么?

web的工作架构:

1、浏览器的作用:用户提交请求给服务器,将服务器返回的响应解析出来

2、web服务器:接受用户请求,并给用户做出响应,Windows下有IIS ,Linux下有Apache、Nginx

3、web应用:用php、jsp、asp、aspx等开发语言开发一个web应用程序(博客、购物网站等)。运行在服务器上

4、数据库:存储数据,数据库有一个接口,在应用程序中指定连接数据库的账户密码

5、中间件:举个例子,在Linux环境下,用Apache作为服务器想要运行一个Java程序,还需要Tomcat环境的支持,Tomcat就是一个中间件。目前Apache等服务器和中间件的区分越来越少,可以广泛理解为中间件是Apache、IIS、Nginx、Tomcat、Jboss的统称。

顶一下
(0)
0%
踩一下
(0)
0%
相关评论
我要评论
用户名: 验证码:点击我更换图片

网站地图 (共30个专题284978篇文章)

返回首页