中企动力 > 头条 > 腾讯云建网站

网站性能检测评分

注:本网站页面html检测工具扫描网站中存在的基本问题,仅供参考。

腾讯云建网站

从零开始搭建腾讯云上的SpringBoot容器化应用 互联网视频课程

img

宛丝

关注

更多腾讯海量技术文章,请关注云+社区:https://cloud.tencent/developer

作者:李想

由于最近容器技术的火热,各大云计算厂商都已经提供了独立的容器服务,腾讯云也不例外。腾讯云容器服务的官方文档提供了一个基于Node.js的简单案例供大家上手,考虑到官方的文档并没有提供基于Java的上手教程,再加上容器/微服务技术在Java领域的各种衍生开源组件--如SpringCloud家族的各种神器应用极其广泛,今天有空拿一个简单的带增删改查接口功能的SpringBoot应用外接腾讯云CDB for MySQL来把玩容器服务,正好以此来演示如何从零开始在腾讯云上搭建基于SpringBoot的容器化应用。关于为啥选用SpringBoot框架,我想原因也不必多说,主要还是因为其本身就是一个为容器而生的框架,自带Tomcat服务器而且能以极简的配置构建web服务(相对于SpringMVC而言)。

这里以一个提供用户管理的微服务为例进行搭建,为了简化步骤仅考虑用户数据的增删改查功能不考虑实际业务逻辑。微服务本身基于SpringBoot框架,数据库保存在腾讯云CDB for MySQL上,同时利用Spring的JPA作为ORM框架,最终发布可以对用户数据进行增删改查的Restful接口。

1. 创建SpringBoot 项目

IntelliJ Idea默认可以创建SpringBoot应用,新建项目里面选择Spring Initializer。

创建SpringBoot项目

修改对应的名字,我们这里就叫UserProvider

项目配置

修改项目的组织架构如图所示,各部分功能如下:

Controller/UserProviderController.java: HTTP请求的监听入口,为了简化程序不再写Service层,直接调用DAO层

DAO/UserInfoDao.java: DAO层,直接使用JPA实现

Model/UserProviderApplication.java: entity层,映射到数据库,为了简化程序只定义了名字,年龄,性别几个字段

项目组织架构

代码本身不再做过多的解释,都是最基础的SpringBoot代码,大家可以从下面的地址获取代码。https://github/xianl/UserProvider

需要提到的是application.yml文件和项目根目录下的MAVEN配置文件pom.xml。

application.yml 中通过${userprovider_mysql} 来获取环境变量中配置好的数据库地址传给jdbc,后面会演示如何通过腾讯云的容器服务来传入这个参数到容器内。

server:port: 8090spring:jpa:hibernate:ddl-auto: createdatasource:url: jdbc:mysql://${userprovider_mysql}/userdbusername: springuserpassword: Test01!info:app:name: @project.artifactId@encoding: @project.build.sourceEncoding@java:source: @java.version@target: @java.version@

pom.xml 需要引入JPA和mysql的依赖包,同时加入docker-maven-plugin用于直接打包生成docker镜像。

org.springframework.bootspring-boot-starter-data-jpamysqlmysql-connector-javaorg.springframework.bootspring-boot-maven-plugincom.spotifydocker-maven-pluginuserproviderjava["java", "-jar", "/${project.build.finalName}.jar"]/${project.build.directory}${project.build.finalName}.jar

首先在本地进行调试,创建userdb数据库并赋予用户springuser对数据库的访问权限。同时需要设置本地环境变量userprovider_mysql的值为127.0.0.1。

mysql> create database userdb;Query OK, 1 row affected (0.00 sec)mysql> create user 'springuser'@'%' identified by 'Test01!';Query OK, 0 rows affected (0.00 sec)mysql> grant all on userdb.* to 'springuser'@'%';Query OK, 0 rows affected (0.00 sec)

访问本地的8090端口,调用add接口插入一条数据,再次通过Users接口可以获取之前插入的数据。表明程序本身没有问题,本地调试成功之后可以进行后续的操作。

本地调试

2. 生成docker镜像并上传到腾讯云镜像仓库

在一台安装好git+java+maven+docker的Linux主机上执行下面的命令生成docker镜像。由于我们的application.yml文件需要读取环境变量来获取数据库的地址,所以我们在打包jar包和docker镜像的时候需要指定参数-DskipTests,否则在测试的时候会报数据库连接的错误。

cd /optgit clone https://github/xianl/UserProvider.gitcd UserProvidermvn clean package docker:build -DskipTests

执行docker images 可以看到刚才生成的userprovider镜像。

[root@VM_1_13_centos ~]# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEuserprovider latest 53cdf5acf3a4 2 hours ago 673.6 MBdocker.io/java latest d23bdf5b1b1b 11 months ago 643.1 MB

腾讯云的镜像仓库服务是包含在容器服务内而不像其他云厂商专门列出一项服务,使用前需要先开通。

开通镜像服务

通之后按照惯例先login再打tag最后上传。

[root@VM_1_13_centos UserProvider]# docker login --username=xxxxxxxxx ccr.ccs.tencentyunPassword:Login Succeeded[root@VM_1_13_centos UserProvider]# docker tag userprovider:latest ccr.ccs.tencentyun/mydocker/userimage:0.0.1[root@VM_1_13_centos UserProvider]# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEccr.ccs.tencentyun/mydocker/userimage 0.0.1 53cdf5acf3a4 13 minutes ago 673.6 MBuserprovider latest 53cdf5acf3a4 13 minutes ago 673.6 MBdocker.io/java latest d23bdf5b1b1b 11 months ago 643.1 MB[root@VM_1_13_centos UserProvider]# docker push ccr.ccs.tencentyun/mydocker/userimage:0.0.1The push refers to a repository [ccr.ccs.tencentyun/mydocker/userimage]04e86a77317a: Pushed35c20f26d188: Pushedc3fe59dd9556: Pushed6ed1a81ba5b6: Pusheda3483ce177ce: Pushedce6c8756685b: Pushed30339f20ced0: Pushed0eb22bfb707d: Pusheda2ae92ffcd29: Pushed0.0.1: digest: sha256:30361f7235797976d196473374a4b16c39fe614753d1801b329be7ea55a7e6fa size: 2212

登录管理界面也能看到刚才上传的userimage镜像。

镜像列表

3. 搭建容器群集并部署服务

腾讯云上的容器集群搭建非常之简单,可以任意添加新建的节点甚至已有的CVM虚拟机。具体步骤我这里不再赘述,官方文档上写的都很清楚大家可以查看。

群集管理

同时我们在容器集群所在的VPC内部再建立一台Mysql数据库,按照之前处理本地数据库的步骤同样创建userdb数据库和用户springuser,数据库的内网地址为10.98.1.9,后面我们需要把这个地址传进容器服务里。

MySQL实例

对于k8s集群,一般来说我们可以使用kubectl来下发如下的yml文件来进行部署,yml文件中主要指定了镜像的地址,端口号以及我们需要配置的环境变量等。

---apiVersion: apps/v1beta1kind: Deploymentmetadata:name: userproviderspec:replicas: 1template:metadata:labels:app: userproviderspec:containers:- name: userproviderimage: ccr.ccs.tencentyun/mydocker/userimage:0.0.1ports:- containerPort: 8090env:- name: userprovider_mysqlvalue: 10.98.1.9---apiVersion: v1kind: Servicemetadata:name: userproviderspec:type: NodePortports:- nodePort: 30010port: 8090targetPort: 8090selector:app: userprovider

腾讯云容器服务为用户提供了更为方便的操作方法,只需在添加服务界面进行一定配置就能进行服务部署,等于是把ymal文件的配置做了可视化,减轻了用户的工作量。

注意一下环境变量的部分,我们这里指定了userprovider_mysql为我们内网数据库的地址10.98.1.9。

新建容器服务

因为我们选取了发布服务到公网,系统会自动创建LB将公网端口8080映射到容器的服务端口8090, 查看LB详情可以看到自动生成的域名。

LB详情

通过访问绑定的域名的8080端口,接口测试成功。

通过LB接口测试

总结

从上面的测试步骤可以看到,腾讯云的容器服务从最大程度上做到了人性化,用户甚至可以在完全不用登陆群集节点的情况下快速进行容器服务部署。同时腾讯云容器服务本身就是基于k8s做服务编排并兼容kubernetes标准API,又使得其通用性和易用性更强。本例提供的生成镜像的方法还是以手动为主,在客户的实际环境中如果结合Jenkins等CI/CD的工具就能够进一步提高效率和自动化程度。另外本文未提及的日志管理、监控告警功能也能为用户提供更多的便利,使开发人员将时间更多的投入在业务逻辑本身,也使运维人员能更多的把时间投入在应用本身的异常上面。

如何搭建个人网站 流量视频课程

img

邹寄瑶

关注

之前也写过此类的文章,但是因为当时入门不久,写的文章可能会错误的引导大家。现在,本博客建立的500+天了,博主从一个“菜鸟”转为“有经验的站长”了。

一、 域名,就是‘baidu’ ‘smallxu.me’的这种。在访问某一个网站时,必须输入域名(或者IP),然后会通过DNS搜索到域名所解析的IP,然后去访问这个IP。

域名的注册可以去 阿里云 腾讯云 西部数码 狗爹 等等域名注册商,不建议注册tk gq ga cf ml等免费、非主流域名(搜索引擎虽然口头上说不歧视,但是在实际应用中还是有影响的)

ps:.me域名不支持北京备案(后面讲备案)

二、 域名DNS

域名(英语:Domain Name),简称域名、网域,是由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置)。网域名称系统(DNS,Domain Name System,有时也简称为域名)是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP地址数串。例如,wikipedia.org是一个域名,和IP地址208.80.152.2相对应。DNS就像是一个自动的电话号码簿,我们可以直接拨打wikipedia的名字来代替电话号码(IP地址)。我们直接调用网站的名字以后,DNS就会将便于人类使用的名字(如wikipedia.org)转化成便于机器识别的IP地址(如208.80.152.2)。

域名的dns可以使用域名注册商默认的dns,也可以使用第三方dns或者cdn(或waf)的域名DNS。例如 cloudxns dnspod cloudflare (百度云加速 360网站卫士 太垃圾,不提了)这些域名dns

也可以利用自己的服务器搭建域名DNS(不能保证可用性和稳定性),如何利用服务器搭建DNS我们后面的文章在讲解(搭建的域名DNS必须在对应的域名后缀注册局进行DNS注册,否则无法使用)

三、 网站服务器

网站服务器分为许多种 例如 虚拟主机 云服务器 VPS 以及物理服务器

1.虚拟主机

虚拟主机是指在网络服务器上分出一定的磁盘空间,用户可以租用此部分空间,以供用户放置站点及应用组件,提供必要的数据存放和传输功能。

虚拟主机有着便宜、快速、便捷的优点,但是随着网站的发展,虚拟主机的缺点也就慢慢的出现了——①若虚拟主机所在的物理服务器被攻击,该物理服务器下所有网站都会故障②有些虚拟主机不支持https③随着网站发展,会发现虚拟主机的容量、流量不够使用

2.VPS

VPS(Virtual Private Server 虚拟专用服务器)技术,将一台服务器分割成多个虚拟专享服务器的优质服务。实现VPS的技术分为容器 技术,和虚拟化技术 ] 。在容器或虚拟机中,每个VPS都可分配独立公网IP地址、独立操作系统、实现不同VPS间磁盘空间、内存、CPU资源、进程和系统配置的隔离,为用户和应用程序模拟出“独占”使用计算资源的体验。VPS可以像独立服务器一样,重装操作系统,安装程序,单独重启服务器。VPS为使用者提供了管理配置的自由,可用于企业虚拟化,也可以用于IDC资源租用。IDC资源租用,由VPS提供商提供。不同VPS提供商所使用的硬件VPS软件的差异,及销售策略的不同,VPS的使用体验也有较大差异。尤其是VPS提供商超卖,导致实体服务器超负荷时,VPS性能将受到极大影响。相对来说,容器技术比虚拟机技术硬件使用效率更高,更易于超卖,所以一般来说容器VPS的价格都高于虚拟机VPS的价格。这些VPS主机以最大化的效率共享硬件、软件许可证以及管理资源。每个VPS主机都可分配独立公网IP地址、独立操作系统、独立超大空间、独立内存、独立CPU资源、独立执行程序和独立系统配置等. VPS主机用户除了可以分配多个虚拟主机及无限企业邮箱外, 更具有独立主机功能, 可自行安装程序,单独重启主机。简单理解VPS就是一台拥有公网IP的服务器

VPS也可以去阿里这样的大厂商购买(大部分都是云服务器)

3.云服务器

云服务器是一种简单高效、安全可靠、处理能力可弹性伸缩的计算服务。其管理方式比物理服务器更简单高效。用户无需提前购买硬件,即可迅速创建或释放任意多台云服务器。云服务器帮助您快速构建更稳定、安全的应用,降低开发运维的难度和整体IT成本,使您能够更专注于核心业务的创新。

云服务器和VPS之区别

云服务器是由一个集群所分担的,假设该集群有一台物理服务器故障,其他的服务器可以依靠镜像正常运行 VPS若物理服务器故障,那么VPS直接崩溃

4.物理服务器

物理服务器就是一台实体计算机托管到机房,其配置可以由自己而定,拥有着和普通电脑相同的能力。但是在租用或托管一台物理服务器时,需要考虑其机房配置、宽带配置、以及服务器供电。

综合排序 物理服务器>云服务器>VPS>虚拟主机

PS. VPS及云服务器的虚拟化有多种方式 1.XEN 2.KVM 3.OVZ期综合性能排序 KVM>=xen>ovz

五、 云服务器/VPS/物理服务器的环境选择

就目前来说,php是全能语言,既可以在WIN上运行也可以在linux上运行

若你是用的是zblog一类以ASP(zblog也有php版)为主的程序,win是必选,因为只有Win可以运行asp/aspx

如果使用php,那么linux是首选,其次是win,因为linux初始占用内存小,占用系统资源小,对于低配置服务器是最佳选择。而win则是图形化操作,对于新手最好

网站环境nginx轻量、易操作,apache管理好,iis最为垃圾 但是因为asp只能运行在iis上(目前这样)而且iis只能在win上(听说微软在为linux开发Iis)

php环境因为7.0及以上不支持mysql拓展,所以一般建议5.6

六、 网站备案

在中国大陆以外的服务器可以不用备案,在中国大陆以内的服务器必须向服务器管理商以及工信部提出备案申请,备案后就可以使用国内服务器了

七、 https or http

https 是 http的安全版,搜索引擎会收录较多的https链接

至此一个网站基本就成型了

by 小徐博客网 smallxu.me

搭建一个完全属于自己的博客网站应该如何下手,科普小白建站 行业视频课程

img

怀蕊

关注

有很多朋友问我,如何动手搭建一个完全属于自己的博客网站,该如何下手 要花多少钱需要做那些准备。

下面我就把搭建一个WordPress博客的过程讲一下,仅针对纯白读者,勿喷,谢谢。

准备工作:

一:域名注册

找个域名服务商注册个域名 ,域名是安年收费的

各个服务商价格略有几块的差异,不过基本差不出10块钱去,选那个就看你们自己了。

注册域名一般域名尽量要短一些,然后含义通俗易懂,尽量不要数字和字母混排,主要还是好记为主。

二:购买虚拟主机或者服务器

虚拟主机或者服务器的区别

虚拟主机是配置好环境的空间给你用,分配一定量的服务器资源给你

服务器就要自己配置了,比如我们用WordPres ,就要配置PHP+MySql的web环境。服务器可以做多个网站,而虚拟主机就只能做一个。

想省事简单的话就用虚拟主机,想有所提升,对以后网站发展有提升空间的话就服务器。

购买虚拟主机推荐 ,比如阿里云,腾讯云,百度云,美橙互联(主要还是虚拟主机)都可以

现在虚拟主机这几家最实惠是百度云 近期有活动99(2G网页空间 128MB内存 1000MB数据库 1Mbps独享带宽)

真是相当的便宜了,最一个网站200块搞定了。

不过阿里云,腾讯云,百度云 还是主要做云服务器的,有兴趣觉的也可以买一个入门的服务器用。(配置环境现在也有很多易用的主机面板,安装也很简单)

一个入门的服务器阿里云服务器330块也就搞定了。

域名解析

去域名管理里做域名解析,把让我们的域名和虚拟主机绑定到一块,好一打域名就是我们虚拟主机里的内容。

域名解析图示:记录值就是添我们虚拟主机的IP地址, 主机名就是我们域名的前缀,如www。

关于TTL值 我有文章做过介绍,想了解的可以去看一下。域名解析里的TLL值代表什么呢?该如何设置?

还在虚拟主机里绑定域名,这个都是双向的,要么域名解析也不会生效的。

一般域名生效时间要1到2个小时,也有几分钟的就好。主要看你的网了。

三:博客系统

本文用使用比较广泛的WordPress做演示,当然如果使用typecho,emlog,Z-Blog等(有时间我再做一个详细的博客系统推荐)

博客搭建: 把WordPress的代码传到虚拟主机就可以安装了。

请参考这个GIF动态教程如何安装WordPres?

到这里我们的博客就搭建完成了。安装的时间可能会遇到问题,可以给我留言交流,想知道如何做网站就关注我吧,我会定期分享一些建站教程和项目案例的。

新手如何自己做网站? 新手视频课程

img

范特西

关注

拥有一个属于自己的网站似乎是一件挺不错的事情,你可以做个公司类型网站宣传业务,也可以做个个人类型的网站展示自我。那么对于完全没有建站经验的人来说,如何做网站呢?自己做网站有两种方式。

第一种:网站整套都由自己搭建

建站流程如下:

1、注册域名

现在注册域名比较简单,一般是到新网、阿里云或腾讯云上注册,费用一般在50-100元。

2、选择服务器(网站空间)

选择服务器要考虑这些参数:带宽、单/双/多线、内存、硬盘、硬防、价格,需求不同选择的标准也不同。同时服务器分为国内服务器和国外服务器,选择国外服务器不需要备案,关于备案详情见下文。服务器可以到阿里云、腾讯云、AWS上选择

3、网站备案

网站备案指的是:根据国家法律法规需要网站的所有者向国家有关部门申请的备案(详情见百度百科)。域名指向到国内网站空间,就都必须要备案;指向到国外无需备案。不过小智建议大家网站最好备案,不备案的网站会受到越来越多的限制,比如:域名分享微信朋友圈受限制;微信支付接入不了等等。其实备案的流程并不复杂,只是审核通过的时候不可控,一般在15-30天,所以要需要备案的话,那把审核时间也考虑进去,以免影响网站上线。

5、页面设计

设计出网站的所有页面(首页、内页),一般常用PS来做,如果没有设计经验的人,可以先去学习一些PS知识,前期建议仿站。

6、程序开发

程序开发分为:前端开发及后端开发。前端指的是:页面设计好了是静态的图片,这时需要给页面加上一些“动态的效果”,比如说:按钮可以点击、各个页面串联起来、留言功能可以使用等等。后端指的是:搭建网站管理后台,比如可以上传新闻、产品、公司介绍等数据。这两者一般是用asp+sqlserver数据库、PHP+MySQL数据库、jsp+oracle数据库。

7、网站开通(域名绑定、解析)

一般的域名服务商都会提供解析入口,登入后台去操作就可以了。

优势:网站源代码属于自己的,能力OK的话要新增任何功能都自己决定。

不足:没接触过PS、程序的人需要钻研/学习一段时间才能上手;服务器安全要自己把握,防止被黑。

第二种:基于又快又好自助建站平台自己搭建

建站流程:

1、注册域名

2、域名备案

注:以上与第一种一样

3、页面制作

在又快又好自助建站上挑选喜欢的模板,一键复制,接着上传自己的产品图片、介绍等。操作简单、最快30分钟完成。

4、网站开通(绑定域名)

一键绑定域名,快速开通网站

优势:不用设计页面,也不用写程序;网站安全问题不用操心;平台性质,专业开发人员迭代功能更升级,技术能力优于个人建站者。

不足:大部分自助建站平台是SAAS模式,一般无法提供网站源代码。

总结:如果想自己做网站的话,这两种各有各的优劣。具体选择哪种方式,要看自己的喜好。如果你愿意沉下心来花时间学习整套建站的,那么不妨选择第一种。如果你需要快速建站的,那么小智推荐你用又快又好自助建站。

img

在线咨询

建站在线咨询

img

微信咨询

扫一扫添加
动力姐姐微信

img
img

TOP