小网站架构优化-提升抗并发能力:子应用程序分离方案

news/2024/5/21 9:38:03/文章来源:https://blog.csdn.net/xo_zhang/article/details/8995876
前言:
标题为啥要加个“小”,只因为上一篇文章“小网站架构优化:从100并发抗到4000并发”,带了个“小”字,所以这篇也顺流加个“小”了。

大意“小”是特指秋色园(流量小,服务器配置低)的意思,毕竟文章都是从实战后才写出来的。

关于现实网站的抗并发实情:

由于每个网站的性能点,最后都离不开抗并发这一话题。


也许,网站本身并没有那么多并发访问,但为何还要抗并发?

因为现实不是每个人都是善良的,商业竞争也很激烈,竞争对手间时不时的互相攻击网站也很普遍。

昨天才一网友向我说起,他朋友的网站,逢周一就会被竞争对手攻击,导致业务无法开展,换服务器也无济于事。

所以,提升网站的抗并发能力,除了抵抗用户的高峰期访问,也是是自我网站保护的一种手段。

什么样的站点能抗的起高并发?

若除却外部带宽等因素造成的外部影响,则内部答案只有一个:静态网站。


静态网站何以能抗高并发?

因为静态页面据说在操作系统内核级就能缓存数据并做出响应,所以抗并发能力理论上是最强的。


所以,你看看电商网站,除却技术背后的实现,你能看到的页面,多数是静态页面。


所以技术的背后是Java还是.net还是php,看似就不是那么的特别了。


当然了,也不是所有站点都适合静态化,所以技术架构优化显的特别的重要。

根据某网友提供的数据,仅供参考:

CSDN首页的文章:2000并发以下挂了,这块是java提供服务。

而CSDN的博客:能顶好万级的并发,这块是ASP.NET提供服务。


而CSDN的论坛:能顶好几十级以上的并发,这就是静态化的结果。


所以那篇很火的“去.NET化的文章”,可能是作者个人意淫,当然了,这些数据可能也是意淫的结果,不一定所属事实。

所以,要提高抗并发数,高配的服务器不是全部,还需要合理的代码架构优化:


本次实践分离方案的背景:
在秋色园系统的优化文章中,都似多似少的提到了搜索这块引发的CPU命案。

某天,我想起了“IIs 网站应用程序与虚拟目录的区别及高级应用说明”这篇文章的内容。


有了想把搜索独立出去的想法,这样即使搜索挂了,也不影响网站访问,更不用担心搜索引发的CPU命案。

构思中:

于是三七二十七,就开始想了:

目前秋色园的URL搜索这一块为:www.cyqdata.com/search/类型/搜索内容。


而文章的关键字(一般博客为设置为tag,引到文章,而我是引到搜索区)。

想了两种方案:


A:是弄个二级域名,建个网站来运行,这个需要动点代码:
这种方案,要修改URL变为so.cyqdata.com/类型/搜索内容,看似改动不少,需要调整URL机制和301处理,预计整体在30-60分钟内应该可以解决完。

这种方案的好处是,后续扩展可以部署到其它服务器。

B:直接使用子应用程序,可以不改动代码,直接把搜索这块分离独立子应用程序运行:

这种方案,代码不用改,因为根据search建立子应用程序即可。

这种方案,一般就局域服务器只能在局域网内了。

方案选择:

综合秋色园目前的情况,也就一台VPS。

两个方案的区别就在于动代码和不动代码了。
后来我选择了不动代码,因为实际的效果几乎是一样的,所以就不动代码了。

方案二实施过程:


1:在IIS 6 里新建一虚拟目录search,创建右键属性,应用程序名那里对应的按钮点击“创建应用程序”然后虚拟目录就转化为应用程序了。

2:项目路径还是原来的项目路径,然后设置新的应用程序池,最终如下图:

总结:

一般一个项目大了后,或者逻辑变的复杂后,往往的解决方案就是分解成子项目。

而分解的方案:一般是根据域名,或首页节点目录。


后来思绪了一下,比如目前博客的URL是:xxx.com/cyq1162/admin/...
如果一开始考虑把它设计成:xxx.com/admin/cyq1162/...
这样是不是也就可以轻松的把博客的前后台分离开来。


当然了,分成多个进程,是需要思考,是否有涉及直接的通讯。

文本就介绍到这里了,仅提供一种参考方案。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_780649.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

打造成功电子商务网站的六大设计准则

我能信任你吗?这是所有网购用户忐忑不安的下订单之前都会在心里向网站问的一个问题。 你不能因此指责他们,因为这个时候他们正将自己的信用卡信息提交到你的网站上,而这又仅仅是因为他们认为你会将商品寄送给他们。 关于电子商务网页设计一直…

使用java的html解析器jsoup和jQuery实现一个自动重复抓取任意网站页面指定元素的web应用...

在线演示 本地下载 如果你曾经开发过内容聚合类网站的话,使用程序动态整合来自不同页面或者网站内容的功能肯定对于你来说非常熟悉。通常使用java的话,我们都会使用到一些HTML的解析,例如,httpparser,最早gbin1.com的…

初步试用Squid的替代产品──Varnish Cache网站加速器

[2007-8-29 18:45 | by 张宴 ] Varnish是一款高性能的开源HTTP加速器,挪威最大的在线报纸 Verdens Gang (vg.no) 使用3台Varnish代替了原来的12台squid,性能比以前更好。Varnish的作者Poul-Henning Kamp是FreeBSD的内核开发者之一,他认为现在…

用Varnish代替Squid做网站缓存加速器的详细解决方案

[文章作者:张宴 本文版本:v1.2 最后修改: 2008.01.02 转载请注明出处: http://blog.s135.com]我曾经写过一篇文章──《 初步试用Squid的替代产品──Varnish Cache网站加速器》,但当时仅仅是用着玩,没做深…

基于SSM的在线视频教育网站系统【附源码】

项目概述 基于SSM的在线视频教育网站系统设计与实现.系统分为管理员与普通用户两种角色。非maven项目。 1)登录模块 在进入系统首页后,首先看到的是登录界面,该界面会提供注册用户的功能,在登陆界面,输入用户名之后,首…

15+ 易响应的CSS框架快速开启你的敏捷网站项目

由 于移动互联用户的快速增加,现在数量已经超出10亿,几乎可以肯定的是你的网站每天都会有移动用户访问。如果你组织计划创建一个对移动用户友好的浏览体 验,有多个方面需要考虑。响应快速的网站设计似乎现在很流行,但是仅依赖你的…

Fixed Responsive Nav – 响应式的单页网站导航插件

Fixed Responsive Nav 是一个响应式的,固定的,触摸友好的单页网站导航插件,响应式导航,流畅的动画滚动。该项目采用渐进增强构建,支持工作在 IE6 及以上版本的浏览器。 你可以给导航打开的内容添加一个遮罩&#xff0c…

中介网站 自己接活_做网站赚钱项目之本地租房网站项目可行性和盈利模式

老蒋经常看到一些群里网友在交流哪些网站能够赚钱,也看到很多网赚类社群、网站关注度相对比普通网站高的,毕竟任何兴趣爱好都不如学习到如何赚钱有兴趣。其实,不论是个人博客网站,还是企业商业网站,只要项目没有太大的…

能直接挂在iis的动静态网站_Web应急实战篇(三):批量挂黑页

作为一个网站管理员,你采用开源CMS做网站,比如dedecms,但是有一天,你忽然发现不知何时,网站的友情链接模块被挂大量垃圾链接,网站出现了很多不该有的目录,里面全是博彩相关的网页。而且&#xf…

php网站如何在浏览器中运行环境,关于在浏览器中运行的详细介绍

【1】首先,编写的applet程序必须要在eclipse中能正常运行,本文代码如下:[java] view plain copypackage applet;import javax.swing.*;public class applet extends JApplet{public void init() &nb简介:本篇文章向您介绍了教…

java 理财网站_基于jsp的投资理财网站-JavaEE实现投资理财网站 - java项目源码

基于jspservletpojomysql实现一个javaee/javaweb的投资理财网站, 该项目可用各类java课程设计大作业中, 投资理财网站的系统架构分为前后台两部分, 最终实现在线上进行投资理财网站各项功能,实现了诸如用户管理, 登录注册, 权限管理等功能, 并实现对各类投资理财网站相关的实体…

WSTMall网站系统最新官方版

WSTMall V1.0是在thinkphp 的经典版本3.2.2基础上进行优化开发的, TP 3.2.2不是thinkphp的一个最新的版本,却是thinkphp最金典的一个版本,正所谓站在巨人的肩膀上,WSTMall V1.0继承了thinkphp大道致简的理念,继承了thi…

goutte php,php网站爬虫入门 - Goutte

不使用python scrapy的原因:虽然我用python写爬虫已有多年,但是我越来越想尝试一下用PHP来写个爬虫。厌恶了python的包管理scrapy对于小爬虫来说太繁琐了python的ORM相对PHP laravel的eloquent都像是半成品当然scrapy也有不可替代的功能调试console&…

Hadoop学习笔记—20.网站日志分析项目案例(一)项目介绍

Hadoop学习笔记—20.网站日志分析项目案例(一)项目介绍 网站日志分析项目案例(一)项目介绍:当前页面 网站日志分析项目案例(二)数据清洗:http://www.cnblogs.com/edisonchou/p/44582…

js 转时间戳_赶紧收藏!程序员必备的十三种工具网站,用好了节省你大把的编程时间

我真的拿出我收藏的最最最实用的工具网站来给你们了。相信很多人不光是在编程的过程中,在平时的生活中,也经常会收藏一些有用的网站,方便使用的时候,靠这些网站来解决一些麻烦的事情。比如:做自媒体的人经常需要一些图…

php开发设计,PHP语言网站开发--八识设计

互联网技术的飞速发展,也得到了普及,使人们的生活更加丰富多彩,并逐渐在人们的生活和工作中处于越来越重要的地位。互联网技术在当今社会的发展中,已经成为衡量一个国家经济发展水平的一个尺度。在新的时代背景下,如果…

极简博客网站开发

本次项目的重点是利用web客户端调用远端服务,并且实现前后端分离开发,以此提高团队协作的效率。 我们的大致开发流程是: 设计REST风格的API;使用swagger生成后端框架,并完成后端的编写;与此同时&#xff0…

网站前端性能优化之javascript和css

之前看过Yahoo团队写的一篇关于网站性能优化的文章,文章是2010年左右写的,虽然有点老,但是很多方面还是很有借鉴意义的。关于css的性能优化,他提到了如下几点: CSS性能优化 1、把样式表置于顶部 现把样式表放到文档的&…

nginx + keepalived 实现高可靠web网站

组网图: 配置信息: 左边nigx 服务器的 /usr/local/nginx/conf/nginx.conf #user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; eve…

大型网站架构技术一览

大型网站架构技术一览 网站系统架构层次如下图所示: 1、 前端架构 前端指用户请求到达网站应用服务器之前经历的环节,通常不包含网站业务逻辑,不处理动态内容。 (1) 浏览器优化技术; (2&…