网站架构--学习笔记

news/2024/5/20 4:35:34/文章来源:https://blog.csdn.net/Ghost_leader/article/details/63688183

网站架构

   网站架构,一般是为了一个目的,当访问的用户越来越多,怎么将更好,更快的服务推送给客户。当然后面的服务器架设是必不可少的。当然这里面需要考虑的也有很多。

     硬架构
     一、机房的选择,宽带的选择
     二、对后台主机的划分更细,图片服务器,页面服务器,数据库服务器,日志服务器等等。
   ps:lighttpd来做图片服务器,而apache来做页面服务器。当然不止一台,要很多台来做负载均衡。
            如<img src="http://img.domain/abc.gif" />
            数据库是一个网站最重要的一个环节。当然大部分的操作都是读操作了。所有需要搞一个一主多从,读写分离。
            甚至可以做一个备份后台数据库。在大数据量的情况下,mysqldump基本就没用了,而直接备份数据时肯定会备份文件出错(不停服务情况下)。
            但主从也有一个巨大的缺陷,那就是它只降低了读请求的压力,没有降低写请求的压力,因为主还是一个。
            为了更大的规模,没办法。只能分库了,横向/纵向分割数据库。
            ☆、横向切分数据库就是把不同的表保存到不同的数据库服务器上。
            比如说,博客用户信息放到A数据库服务器,博客用户的博客文章放到B数据库服务器。当然这样是有代价的,最明显的就是无法做LEFT JOIN之类的操作。
            ☆、纵向切分数据库就是很简单的,分库。
            比如说,有5台数据库服务器,可以这样来,将user_id为1-1k 的用户所有相关内容放到1号数据库,1001-2k的用户的所有相关内容放到2号数据库......当然,纵向分库也会有很多麻烦,及明显的SUM,COUNT等函数就使用起来有麻烦。
             当然最好使用专门的应用服务器了,比如专门创建一个php服务器,专门来跑PHP。当然,php-fpm已经使之实现了。可以给应用服务器配置一些如app.momain之类的域名,配置上必要的xcache缓存,加载模块一定要越少越好,除了url重写的mod_rewrite的重要模块。这样是为了减少httpd进程的内存消耗,而那些图片服务器或者静态缓存就是用lighttpd来做吧。
            汇总日志也是很有必要的,像淘宝那样的网站,一天下来的日志都是T级别的。那么怎么分析呢?用awk?grep?当然不可能,日志文件能加载进内存吗?这就需要hadoop了,依托云计算平台,专门计算,分析日志。再次强调,日志服务器也是很有必要的。
     
    负载均衡
   一、HTML页面静态化
            常见的信息发布系统,同时缓存,对于频繁使用数据库查询但是内容更新很小的应用,可以使用html静态化。可以将频繁被前端调用,但是又不常更新的内容。缓存起来。
     二、图片服务器分离
            因为在web服务中,图片是很耗资源的
     三、图片托管应用程序
            提供web内容的分发,比如CDN。
     四、数据库集群和库表散列
            数据库集群不用说了,库表散列呢,就是比如论坛:用户,设置,帖子等信息设置数据库分离,然后对帖子、用户按照板块和ID进行散列。
     五、缓存
           网站的开发当然要有很多很多的缓存。squid等
     六、镜像
           镜像技术是大型网站提高性能和数据安全性的方式,镜像技术可以解决不同网络接入商和地域带来的访问速度差异。比如说可以使用rsync+inotify工具。
     七、硬件四层交换
           使用第三层和第四层信息包的报头。来分摊流量。
     八、软件四层交换
           LVS


           
    根据淘宝网的发展史,今后的网站将迎来的就是云时代。
    从最开始的几台机器组成的lamp架构就构建成了一个网站。到后来名气打出来了,有人访问了。
    好了,这下访问的人越多越多了,几台服务器扛不住了,开始集群架构,包括缓存,各种分离等等。
    现在,云时代的到来,  应‘云’而生---云时代的到来。使得运维有了新的理念。
    云计算无疑是目前IT领域最大的热点。淘宝将所有的东西都放到云上,
          
      所有的东西由云服务平台统一集中运行管理。比如某部门想要一台主机,直接去云上拿,所有的东西好像都是有一个接口,
通过接口直接去拿,而根本不用去管硬件这些实际存在的东西。如果用服务器蹦了,云里会调度。直接去补充云。有了云,淘宝可以在十小时之内迅速部署一个淘宝购物平台,一切都是自动化的。比如现在想要一个mysql主从架构了,鼠标点点就直接可以获取到‘。再通过hadoop将所有的运行状态,日志汇总,计算,管理。日后的网站架构将越来越自动化。整个网站就跟工业革命一样,工业革命前,人们还是手工纺织,工业革命后,机器代替一切,自动化的生产流水线,将原料投进去,就有纺好的布出来。

下来简单得配置一个小的网站架构。(使用wordpress个人博客系统)
由于我的虚拟机开启数量有限。所以我的设想是这样的。

前方有haproxy+keepalive负责负载均衡(2台主机)
中间nginx来提供web服务(2台主机)
      后端采用mysql主从配置,一个(2台主机)
       一台nagios负责监控整个业务

主机名: proxy1  192.168.217.10  负责调度和动静分离
               proxy2  192.168.217.11   同上
               web1    192.168.217.12   apache,负责静态请求(虽然nginx更适合静态请求。。。微笑
               web2    192.168.217.13   nginx,负责动态请求
               master  192.168.217.14    mysql的主服务器
               slave    192.168.217.15     mysql的从服务器
                         
配置前台(keepalive+haproxy)

proxy1主机。(proxy2做同样的操作)
配置yum源
[root@proxy1 ~]# yum makecache
Loaded plugins: product-id, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
HighAvailability                                         | 3.9 kB     00:00 ... 
LoadBalancer                                             | 3.9 kB     00:00 ... 
ResilientStorage                                         | 3.9 kB     00:00 ... 
ScalableFileSystem                                       | 3.9 kB     00:00 ... 
Server                                                   | 3.9 kB     00:00 ... 
rhel                                                     | 3.9 kB     00:00 ... 
Metadata Cache Created
安装haporxy
[root@proxy1 ~]# yum -y install haproxy
配置haproxy的配置文件
[root@proxy1 ~]# vim /etc/haproxy/haproxy.cfg 
内容如下
globallog         127.0.0.1 local2chroot      /var/lib/haproxypidfile     /var/run/haproxy.pidmaxconn     4000user        haproxygroup       haproxydaemonstats socket /var/lib/haproxy/stats
defaultsmode                    httplog                     globaloption                  httplogoption                  dontlognulloption http-server-closeoption forwardfor       except 127.0.0.0/8option                  redispatchretries                 3timeout http-request    10stimeout queue           1mtimeout connect         10stimeout client          1mtimeout server          1mtimeout http-keep-alive 5stimeout check           5smaxconn                 3000#---------------------------------------------------------------------
# main frontend which proxys to the backends
#---------------------------------------------------------------------
frontend  main *:80acl url_static       path_beg       -i /static /images /javascript /stylesheetsacl url_static       path_end       -i .jpg .gif .png .css .jsacl north.com hdr_beg(host) -i north.comacl 192.168.217.200  hdr(host) -i 192.168.217.200redirect code 301 location http://www.north.com if north.comredirect code 301 location http://www.north.com if 192.168.217.200use_backend static          if url_staticdefault_backend             app#---------------------------------------------------------------------
# static backend for serving up images, stylesheets and such
#---------------------------------------------------------------------
backend staticbalance     roundrobinserver      static 192.168.217.12:80 check#---------------------------------------------------------------------
# round robin balancing between the various backends
#---------------------------------------------------------------------
backend appbalance     roundrobinserver  app1 192.168.217.13:80 checkserver  app2 127.0.0.1:8000      backup

这里说下。
首先做到了动静分离,将图片啊,css样式表啊都放到apache上处理
还有就是永久重定向,比如访问north.com 就自动重写成www.north.com(VIP是192.168.217.200)
备用主机是本机,所以本机的httpd监听8000端口,提供服务器崩溃的页面

制作keepalived。
解压keepalived。解压内容如下。
[root@proxy2 keepalived-1.1.19]# ls
AUTHOR     configure.in  genhash     keepalived          README
bin        CONTRIBUTORS  goodies     keepalived.spec.in  TODO
ChangeLog  COPYING       INSTALL     lib                 VERSION
configure  doc           install-sh  Makefile.in
[root@proxy2 keepalived-1.1.19]# 
开始编译
[root@proxy2 keepalived-1.1.19]# ./configure --prefix=/usr/local/keepalived
make
[root@proxy2 keepalived-1.1.19]# make && make install
做一些链接
[root@proxy2 keepalived-1.1.19]# ln -s /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/
[root@proxy2 keepalived-1.1.19]# ln -s /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
[root@proxy2 keepalived-1.1.19]# ln -s /usr/local/keepalived/etc/keepalived/ /etc/
[root@proxy2 keepalived-1.1.19]# ln -s /usr/local/keepalived/sbin/keepalived /usr/sbin/

proxy1的配置文件(/etc/keepalived/keepalived.conf)
global_defs {notification_email {root@localhost}notification_email_from keepalived@localhostsmtp_server 127.0.0.1smtp_connect_timeout 30router_id nginxvrrp_skip_check_adv_addrvrrp_strictvrrp_garp_interval 0vrrp_gna_interval 0
}vrrp_script chk_http_port {script "/etc/keepalived/check_haproxy.sh"interval 2weight 2
}vrrp_instance VI_1 {state MASTERinterface eth0virtual_router_id 51priority 100advert_int 1authentication {auth_type PASSauth_pass 1111}track_script {chk_http_port}virtual_ipaddress {192.168.217.200/24}
}

proxy2的主配置文件(/etc/keepalived/keepalived.conf)
global_defs {notification_email {root@localhost}notification_email_from keepalived@localhostsmtp_server 127.0.0.1smtp_connect_timeout 30router_id nginxvrrp_skip_check_adv_addrvrrp_strictvrrp_garp_interval 0vrrp_gna_interval 0
}vrrp_script chk_http_port {script "/etc/keepalived/check_haproxy.sh"interval 2weight 2
}vrrp_instance VI_1 {state BACKUPinterface eth1virtual_router_id 51priority 99advert_int 1authentication {auth_type PASSauth_pass 1111}track_script {chk_http_port}virtual_ipaddress {192.168.217.200/24}
}
.在每个主机的/etc/keepalived/下放置监控脚本。

#!/bin/bash
if [ $(ps -C haproxy --no-header | wc -l) -eq 0 ]; then/etc/init.d/haproxy  start
fi
sleep 2
if [ $(ps -C haproxy --no-header | wc -l) -eq 0 ]; then/etc/init.d/keepalived stop
fi
脚本名字是check_haproxy.sh(别忘了给个执行权限)
[root@proxy2 keepalived]# ls
check_haproxy.sh  keepalived.conf  samples


配置中间(nginx+php-fpm     apache+php)

apache的配置就不讲了。。。
直接web2的nginx吧。
创建用户
[root@web2 ~]# groupadd nginx
[root@web2 ~]# useradd -r -c "Nginx" -M -s /sbin/nologin -g nginx nginx
解压缩
[root@web2 ~]# tar xf nginx-1.4.2.tar.gz 
进到目录去编译
[root@web2 nginx-1.4.2]# ./configure \
> --prefix=/usr/local/nginx \
> --sbin-path=/usr/sbin/nginx \
> --conf-path=/etc/nginx/nginx.conf \
> --error-log-path=/var/log/nginx/error.log \
> --http-log-path=/var/log/nginx/access.log \
> --pid-path=/var/run/nginx/nginx.pid \
> --lock-path=/var/lock/nginx.lock \
> --user=nginx \
> --group=nginx \
> --with-http_ssl_module \
> --with-http_flv_module \
> --with-http_stub_status_module \
> --with-http_gzip_static_module \
> --with-pcre
make and make install
[root@web2 nginx-1.4.2]# make && make install
OK,编译完成。
先来编译php
先装相关依赖(rpm可以在网上找,我全是在网上找的)
[root@web2 php]# rpm -ivh libmcrypt-2.5.8-9.el6.x86_64.rpm libmcrypt-devel-2.5.8-9.el6.x86_64.rpm mhash-0.9.9.9-3.el6.x86_64.rpm mhash-devel-0.9.9.9-3.el6.x86_64.rpm 
warning: libmcrypt-2.5.8-9.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY
Preparing...                ########################################### [100%]1:mhash                  ########################################### [ 25%]2:libmcrypt              ########################################### [ 50%]3:libmcrypt-devel        ########################################### [ 75%]4:mhash-devel            ########################################### [100%]
[root@web2 php]# tar xf libiconv-1.13.1.tar.gz 
[root@web2 php]# cd libiconv-1.13.1
[root@web2 libiconv-1.13.1]# ./configure --prefix=/usr/local/libiconv
make and make install
编译php
[root@web2 php]# tar -xf php-5.4.13.tar.gz 
[root@web2 php]# cd php-5.4.13
[root@web2 php-5.4.13]# ./configure --prefix=/usr/local/php \
> --with-openssl \
> --enable-mbstring \
> --with-freetype-dir \
> --with-jpeg-dir \
> -with-png-dir \
> --with-zlib \
> --with-libxml-dir=/usr \
> --enable-xml \
> --enable-sockets \
> --with-mcrypt \
> --with-config-file-path=/etc \
> --with-config-file-scan-dir=/etc/php.d \
> --with-bz2 \
> --enable-maintainer-zts \
> --enable-fpm \
> --with-curl \
> --with-iconv=/usr/local/libiconv \
> --with-mysql \
> --with-mysqli \
> --with-pdo-mysql \
> --enable-mysqlnd

如果编译出错,提示缺啥,直接yum装就好了(大部分都是什么什么-devel)
make && make install

编译Xcache
编译加载模块。
[root@web2 php]# tar xf xcache-3.0.0.tar.gz 
[root@web2 php]# cd xcache-3.0.0
[root@web2 xcache-3.0.0]# /usr/local/php/bin/phpsize
[root@web2 xcache-3.0.0]# /usr/local/php/bin/phpize
Configuring for:
PHP Api Version:         20100412
Zend Module Api No:      20100525
Zend Extension Api No:   220100525
编译
[root@web2 xcache-3.0.0]# ./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config 
[root@web2 xcache-3.0.0]# make && make install
配置文件
[root@web2 xcache-3.0.0]# mkdir /etc/php.d
[root@web2 xcache-3.0.0]# cp xcache.ini /etc/php.d/
[root@web2 xcache-3.0.0]# vim /etc/php.d/xcache.ini 
内容
[xcache-common]
;; non-Windows example:
extension = /usr/local/php/lib/php/extensions/no-debug-zts-20100525/xcache.so
;; Windows example:
; extension = php_xcache.dll

更改nginx的配置文件
        location ~ \.php$ {root           html;fastcgi_pass   127.0.0.1:9000;fastcgi_index  index.php;fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;include        fastcgi_params;}
启动
[root@web2 xcache-3.0.0]# service php-fpm start
Starting php-fpm  done
[root@web2 xcache-3.0.0]# service nginx start
nginx is already running, master process is 3606.
写入页面
[root@web2 xcache-3.0.0]# echo "<?php phpinfo(); ?>" >/usr/local/nginx/html/index.php
更改/etc/nginx/fastcgi_params fast_cgi的参数
fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE    nginx;fastcgi_param  QUERY_STRING       $query_string;
fastcgi_param  REQUEST_METHOD     $request_method;
fastcgi_param  CONTENT_TYPE       $content_type;
fastcgi_param  CONTENT_LENGTH     $content_length;
fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
fastcgi_param  REQUEST_URI        $request_uri;
fastcgi_param  DOCUMENT_URI       $document_uri;
fastcgi_param  DOCUMENT_ROOT      $document_root;
fastcgi_param  SERVER_PROTOCOL    $server_protocol;fastcgi_param  REMOTE_ADDR        $remote_addr;
fastcgi_param  REMOTE_PORT        $remote_port;
fastcgi_param  SERVER_ADDR        $server_addr;
fastcgi_param  SERVER_PORT        $server_port;
fastcgi_param  SERVER_NAME        $server_name;

重启下php-fpm nginx。
可以看到,编译成功,Xcache加了进去


后台数据库的配置。
mysql的编译不演示了。不过我是mysql5.6(源码编译)
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.6.26-log Source distributionCopyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

安装heatbeat。
[root@master heartbeat]# yum -y install \
> heartbeat-3.0.4-2.el6.x86_64.rpm \
> heartbeat-devel-3.0.4-2.el6.x86_64.rpm \
> heartbeat-libs-3.0.4-2.el6.x86_64.rpm \
> ldirectord-3.9.5-3.1.x86_64.rpm 

复制配置文件进来
[root@master heartbeat]# cd /etc/ha.d/
[root@master ha.d]# ls
harc  rc.d  README.config  resource.d  shellfuncs
[root@master ha.d]# cp /usr/share/doc/heartbeat-3.0.4/{authkeys,ha.cf,haresources}  .
[root@master ha.d]# ls
authkeys  ha.cf  harc  haresources  rc.d  README.config  resource.d  shellfuncs

更改key的权限
[root@master ha.d]# chmod 600 authkeys 

修改ha.cf(只贴出来,重要需要改的)
34 logfacility     local0
48 keepalive 2
56 deadtime 30
61 warntime 10
71 initdead 60
76 udpport 694
91 bcast   eth1 
157 auto_failback on
211 node    master.example.com
212 node    slave.example.com
220 ping 192.168.217.131
253 respawn hacluster /usr/lib64/heartbeat/ipfail
259 apiauth ipfail gid=haclient uid=hacluster

修改authkeys
auth 1
1 crc

修改haresources
master.example.com IPaddr::192.168.217.201/24/eth0 drbddisk::example Filesystem::/dev/drbd1::/var/lib/mysql::ext4 mysqld


好了,可以添加drbd了。(首先两台主机添加一块硬盘,大小要一样)
准备好rpm包!
[root@master x86_64]# ls
drbd-8.4.2-2.el6.x86_64.rpm
drbd-bash-completion-8.4.2-2.el6.x86_64.rpm
drbd-heartbeat-8.4.2-2.el6.x86_64.rpm
drbd-km-2.6.32_431.el6.x86_64-8.4.2-2.el6.x86_64.rpm
drbd-pacemaker-8.4.2-2.el6.x86_64.rpm
drbd-udev-8.4.2-2.el6.x86_64.rpm
drbd-utils-8.4.2-2.el6.x86_64.rpm
drbd-xen-8.4.2-2.el6.x86_64.rpm
安装drbd
[root@master x86_64]# rpm -ivh *
Preparing...                ########################################### [100%]1:drbd-utils             ########################################### [ 13%]2:drbd-bash-completion   ########################################### [ 25%]3:drbd-heartbeat         ########################################### [ 38%]4:drbd-pacemaker         ########################################### [ 50%]5:drbd-udev              ########################################### [ 63%]6:drbd-xen               ########################################### [ 75%]7:drbd                   ########################################### [ 88%]8:drbd-km-2.6.32_431.el6.########################################### [100%]
[root@master x86_64]# 

配置文件位置
[root@master x86_64]# cd /etc/drbd.d/
[root@master drbd.d]# ls
global_common.conf
[root@master drbd.d]# 
编译一个配置文件   /etc/drbd.d/example.res  example可以随便起,但是必须以.res结尾
resource example {
meta-disk internal;
device /dev/drbd1;
syncer {
verify-alg sha1;
}
on master.example.com {
disk /dev/sdb;
address 192.168.217.14:7789;
}
on slave.example.com {
disk /dev/sdb;
address 192.168.217.15:7789;
}
}

编写好后,给slave也复制一份
执行命令。(两边都执行)
[root@slave drbd.d]# drbdadm create-md example
启动drbd。
[root@master drbd.d]# service drbd start
Starting DRBD resources: [create res: exampleprepare disk: exampleadjust disk: exampleadjust net: example
]
.........
将master设置为主。slave设置为从,开始同步数据,并且查看
[root@master drbd.d]# drbdsetup /dev/drbd1 primary --force
[root@master drbd.d]# cat /proc/drbd 
version: 8.4.2 (api:1/proto:86-101)
GIT-hash: 7ad5f850d711223713d6dcadc3dd48860321070c build by root@master.example.com, 2017-03-15 00:23:561: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r---n-ns:713356 nr:0 dw:0 dr:719512 al:0 bm:43 lo:0 pe:2 ua:6 ap:0 ep:1 wo:f oos:1385372[=====>..............] sync'ed: 34.0% (1385372/2097052)Kfinish: 0:00:25 speed: 54,744 (54,744) K/sec
格式化磁盘。
[root@master drbd.d]# mkfs.ext4 /dev/drbd1
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks 。。。。。
关闭MySQL
挂载到MySQL的数据区。
[root@master mysql]# mount /dev/drbd1 /usr/local/mysql/data
重新初始化MySQL
[root@master mysql]# scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
启动MySQL(成功)
[root@master mysql]# service mysqld start
Starting MySQL..... SUCCESS! 
[root@master mysql]# 
测试成功。关闭MySQL。开始搭建集群。
drbd两边都设置为secondary。
[root@master mysql]# cat /proc/drbd
version: 8.4.2 (api:1/proto:86-101)
GIT-hash: 7ad5f850d711223713d6dcadc3dd48860321070c build by root@master.example.com, 2017-03-15 00:23:561: cs:Connected ro:Secondary/Secondary ds:UpToDate/UpToDate C r-----ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0


启动heartbeat。实现MySQL的高可用。
在mysql上创建访问的用户
mysql> grant all on *.* to 'north'@'192.168.%.%' identified by '123';
Query OK, 0 rows affected (0.11 sec)
建立博客需要的数据库
mysql> create database wordpress;
Query OK, 1 row affected (0.05 sec)


最后部署个个人博客系统。wordpress


接下来就配置就好了。




来。查看一下页面吧。。。。(接下来自己定义吧)















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

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

相关文章

对个人站长建站的3点建议

对于建站前期的选择重不重要&#xff0c;这个我是可以肯定的回答你&#xff1a;是很重要的。我们应该先走好站长的第一步&#xff0c;有了良好的开端&#xff0c;然后就会后续的第二步&#xff0c;第三步。作为新手站长&#xff0c;我们应该更要注重前期的建设。那我们在建站前…

云主机建站的优势

在现如今的快速发展的互联网时代&#xff0c;大多数的企业都是需要通过建设自己企业的网站来实现互联网的营销的&#xff0c;尤其是一些传统的企业。企业在建设网站时&#xff0c;一般的建站公司都会给你提供多种方式以供你选择&#xff0c;目前比较流行的就是利用云主机去建站…

建设电商型网站需要注意的

近年来&#xff0c;随着互联网的普及&#xff0c;电子商务在我国的迅猛发展&#xff0c;互联网商业应用成为很多企业首先选择的途径。然而 &#xff0c;随着电子商务日益走向成熟&#xff0c;以网站托管、网站代运营等新兴电子商务模式开始在国内兴起&#xff0c;传统的网站运营…

企业建站的一些建议

随着互联网的快速发展&#xff0c;现在基本上无论什么企业都会有一个自己的网站&#xff0c;但是这些网站的质量却是参差不齐的&#xff0c;其中就有一部分企业的网站的打开速度是很慢的&#xff0c;这样的网站就和没有是差不多的&#xff0c;甚至还会对企业的形象还会产生负面…

虚拟主机会影响到SEO吗

众所周知&#xff0c;主机是网站的基础&#xff0c;主机的质量性能是会直接影响到网站的。因为只有一个稳定的主机才能保证搜索引擎蜘蛛可以顺利地爬行&#xff0c;才不会影响到网站的排名和权重。 相信各位站长朋友都知道&#xff0c;如果一台主机不稳定的&#xff0c;蜘蛛爬…

独立IP的网站空间有什么优势

独立IP&#xff0c;顾名思义就是同一个IP下只存在自己的站点&#xff0c;不与服务器上的其他站点共享。独立IP空间&#xff0c;就是拥有独立IP的网站空间或虚拟主机。和独立IP对应的是共享IP&#xff0c;即在同一个IP下建立多个站点。由于目前独立IP资源有限&#xff0c;大多数…

如何提升网站速度

现在虚拟主机的用户依旧很多&#xff0c;刚开始还可以&#xff0c;但是随着后期网站页面和数据的增多&#xff0c;网站打开速度就会很慢。这种情况不一定要换更大的空间或者是换成其他的服务器&#xff0c;将网页的代码优化一下或许更可行&#xff0c;在制作主页的时候&#xf…

如何挑选一个适合自己的网站空间,需要注意哪些呢

网站空间在行业内也常被称为虚拟主机空间&#xff0c;通常的中小企业做网站都不会自己架服务器&#xff0c;大部分都是选择虚拟主机来放置网站内容。网站空间是企业存储网站的重要设备&#xff0c;对企业网站有着重要的影响&#xff0c;所以网站空间的选择就变得尤为重要。那么…

云服务器快速安全部署网站

准备&#xff1a; 一.云服务器​&#xff1a;9.5特价服务器&#xff0c;点击文末“阅读原文"购买。 二.FTP工具&#xff0c;网站源码&#xff0c;回复”ECS“获取下载链接​。​ 微信.jpg 本小节的主要内容&#xff1a;在实验提供的ECS服务器中&#xff0c;安装部署Apache…

【网站建设学习笔记001】域名注册及快速添加域名解析

域名注册及快速添加域名解析 目录 【网站建设学习笔记001】域名注册及快速添加域名解析 一、域名注册&#xff1a; 二、快速添加域名解析 三、教程结束&#xff01;&#xff01; 一、域名注册&#xff1a; 需要寻求自己想要建设的网站&#xff0c;给他起个名字&#xff0c;…

【网站建设学习笔记002】域及DNS解析的相关知识扫盲

DNS解析相关知识扫盲 目录 DNS解析相关知识扫盲 一、DNS概念 二、域名的分层结构 三、DNS的分层结构 四、DNS解析过程 五、DNS术语 一、DNS概念 DNS 是域名系统 (Domain Name System) 的缩写&#xff0c;是因特网的一项核心服务&#xff0c;它作为可以将域名和IP地址相互…

网站接入支付宝支付详细步骤

支付宝开放平台文档中心&#xff1a;https://docs.open.alipay.com/catalog 1、 注册支付宝商家 2、 PC站申请【电脑网站支付】、手机站申请【手机网站支付】&#xff1b;自适应网站2个都申请 3、开通支付宝开放平台 4、查看网页&移动应用 就是我们上面签约的电脑支付和手…

网站接入微信支付详细步骤

微信开发文档&#xff1a;https://pay.weixin.qq.com/wiki/doc/api/index.html 1、注册微信支付商家 2、PC站申请【Native支付】、手机站申请【H5支付】&#xff1b;自适应网站2个都申请 3、下载微信支付demo Native支付&#xff1a;https://pay.weixin.qq.com/wiki/doc/api…

腾讯云简单网站设置教程

第一步 安装http服务器 yum install httpd 查看http服务器 httpd -version 启动http服务器 service httpd start 第二步 放项目到/var/www/html 下 第三步 网站访问

在网站底部附上网站备案号

前置条件 备案号已申请通过。本文举例的网站是在腾讯云申请的服务器和域名&#xff0c;管局备案成功后&#xff0c;在全国互联网安全管理服务平台http://www.beian.gov.cn成功备案的。 步骤一 全国互联网安全管理服务平台http://www.beian.gov.cn 你的对应备案联网信息地址为…

php开发模拟基金定投网站

代码上传在github: GitHub - lj102800/simulatedPurchaseOfFunds: 模拟购买基金 采集基金信息来自天天网站&#xff0c;接口为 ​​​​​​http://fund.eastmoney.com/f10/F10DataApi.aspx?typelsjz&code$code&page$p&per200000 策略&#xff1a; 总共有100…

一文搞定!手把手教你文字识别(识别篇:LSTM+CTC, CRNN, chineseocr方法)

个人博客导航页&#xff08;点击右侧链接即可打开个人博客&#xff09;&#xff1a;大牛带你入门技术栈 文字识别是AI的一个重要应用场景&#xff0c;文字识别过程一般由图像输入、预处理、文本检测、文本识别、结果输出等环节组成。 其中&#xff0c;文本检测、文本识别是最…

实战技术:提升网站用户体验—WebP 图片的高效使用

个人博客导航页&#xff08;点击右侧链接即可打开个人博客&#xff09;&#xff1a;大牛带你入门技术栈 一.WebP 的由来 现代图像压缩技术对我们的生活方式影响很大。数码相机能将上千张高质量图片存储到一张内存卡里、智能手机可以与邻近设备快速分享高分辨率的图片、网站与…

《大型网站技术架构:核心原理与案例分析》笔记

目录 大型网站软件系统的特点 大型网站架构演化发展历程 初始阶段的网站架构 需求/解决问题 架构 应用服务和数据服务分离 需求/解决问题 架构 使用缓存改善网站性能 需求/解决问题 架构 使用应用服务器集群改善网站的并发处理能力 需求/解决问题 架构 数据库…