服务器端Apache(web服务器)与Tomcat(应用服务器)搭建集群 以及前端框架以及运维常用工具

Nginx
Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上Nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等,
在连接高并发的情况下,Nginx是Apache服务器不错的替代品.

Nginx是一个web服务器也可以用来做负载均衡及反向代理使用,目前使用最多的就是负载均衡

Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。

Apache
Apache是web服务器(静态解析,如HTML),tomcat是java应用服务器(动态解析,如JSP)
Tomcat只是一个servlet(jsp也翻译成servlet)容器,可以认为是apache的扩展,但是可以独立于apache运行.
Apache是普通服务器,本身只支持html即普通网页,可以通过插件支持php,还可以单向连接Tomcat
Apache只支持静态网页,但像Jsp动态网页就需要Tomcat来处理

WebLogic
大型收费Web服务器, made by Oracle, 支持全部JavaEE规范(共13个).

WebSphere
大型收费Web服务器, made by IBM, 支持全部JavaEE规范.

Tomcat
Apache开源组织下的 开源的, 免费的, 中小型的Web应用服务器, 支持JavaEE规范中的两种(Servlet & Jsp).

————————————————
版权声明:本文为CSDN博主「依旧风轻」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qfeung/article/details/82818609
web服务器:Apache、Nginx、IIS等

应用服务器:Tomcat、JBoss、Weblogic等

网络监视工具:Nagios
Nagios是一款开源的计算机系统和网络监视工具,能有效的监控Windows、Linux的主机状态,在系统或服务状态异常时发出电子邮件或者短信报警,第一时间通知网站运维人员,在状态恢复后发出正常的电子邮件或短信通知。

现在web服务器和应用服务器其实界限已经不是太清晰了,大部分的应用服务器也包含一些web服务器的功能,使用什么服务器大部分取决与架构场景和技术解决方案。

在服务器集群中,主要场景是一下几种:

1,静态资源优化

2,多环境应用整合

3,负载均衡

4,其他复合场景

接下来准备将Apache(web服务器)与两个Tomcat(应用服务器)集成在一起。

1.环境准备

1.1 Apache安装

windows下面安装Apache简单很多,直接类似软件点击下一步安装一下,配置一下端口号(默认80)。启动就好了。

访问localhost:80/index.html

1.2 Tomcat1与Tomcat2准备

在tomcat官网下载两个免安装的zip包直接解压出来tomcat1和tomcat2;

在tomcat1的目录下打开tomcat1/conf/server.xml,修改HTTP/1.1端口号为:8081


在tomcat1的目录下打开tomcat1/conf/server.xml,修改HTTP/1.1端口为:8082,AJP端口为:8010,redirectPort:8444,Server port:8006,避免与tomcat1端口冲突,因为我这里使用的一台机器搭建的集成环境。



在tomcat/bin目录下点击startup.bat,启动两个tomcat,这里有一个控制台乱码问题,修改一下tomcat/conf/logging.properties,把编码改为GBK

在idea控制台里面有时也会出现类似问题,修改字符集就可以解决。

1.3 在tomcat1和tomcat2的webapps清空,并放入自己测试的资源sample1和sample2的index.html

hello,tomcat1!
hello,tomcat2!
重启tomcat1和tomcat2访问

localhost:8081/sample1/index.html

localhost:8082/sample2/index.html

2.集群配置

2.1修改httpd.conf,加载模块

这里为什么加载mod_jk模块,Apache与tomcat集成是可以通过AJP协议也可以通过HTTP协议,可以使用mod_jk(AJP)和mod_proxy+mod_proxy_ajp(AJP)集成也可以使用mod_proxy+mod_proxy_http(HTTP),这里使用是mod_proxy+mod_proxy_http。

在Apache目录下的modules找一下,没有mod_jk.so,他是tomcat提供的,可以按照自己的机器和Apache版本找一个放在modules下面。

mod_jk.so下载地址http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/windows/

我这里为了方便,直接使用mod_proxy.so+mod_proxy_http.so

接下来修改httpd.conf,加载mod_proxy.so、mod_proxy_http.so模块去掉#

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_module modules/mod_proxy_http.so

在httpd.conf的最后一行,重新开一行,没有任何结束符号的空白地方增加

ProxyPass “/sample1” “http://localhost:8081/sample1”
ProxyPassReverse “/sample1” “http://localhost:8081/sample1”
ProxyPass “/sample2” “http://localhost:8082/sample2”
ProxyPassReverse “/sample2” “http://localhost:8082/sample2”
访问localhost:80/sample1
访问localhost:80/sample2

关于web前端三大框架,一直以来是广大前端开发者口水战必争话题。那么今天也来趟一趟这浑水,仅仅是小编的个人一点小的看法,轻喷哦~之所以web前端框架这个话题热度那么高,很大程度上是因为受众众多。这一点我要解释给前端小白听一下,虽然你在刚开始学习的时候往往是从HTML,CSS,JS学起的,但是一个完整的课程最后肯定是少不了web框架的。因为最后在实际工作的时候,一般都是在框架上搭建网站的,是不会真的从底层开始写代码的。
  因此框架作为项目接近100%利用率的好工具,也是网站的基础,他的好坏也就显得尤为重要了。说到这里大家应该能够明白,大家嘴里的三大框架,肯定是平分秋色,各有优劣的。不然这样激烈的市场,一无是处的框架一早就被淘汰了。

下面给大家具体分析一下这三个前端框架:
  1. Angular
  大家眼里比较“叼”的框架,甚至有人说三大框架中只有她能称的上一个完整的框架,因为他包含的东西比较完善,包含模板,数据双向绑定,路由,模块化,服务,过滤器,依赖注入等所有功能。对于刚开始学习使用框架的小伙伴们,可以推荐这个框架,学会之后简直能颠覆之前你对前端开发的认知。使用 TypeScript能够提高代码可维护性,有利于后期重构。双向数据流很方便,但是等业务复杂之后,你可能就搞不清楚数据流了。还有令人不开心的脏值检查,以及directive的封装并没有解决视图与数据关系完全分离,有时候还要用$digist强制触发检测。
  2.React
  这个框架本身比较容易理解,他的结构很清晰,就是由十几个API组成,然后异步渲染,我们只需要处理好接口和维护就好了,但是很多人反映上手还是有一定的的难度的。React是单向数据流,代码写起来会较双向数据流的多一些,但是同样的排查问题时思路清晰很多。
  3.Vue
  号称是最简单,最容易上手的框架,同时也是行内的大趋势,还可以用来开发最火的小程序。毕竟用这神器,代码码的飞快,项目也能快速上线。同时他也是双向数据流。有些人认为Vue是Angular和React的结合,既有Angular的模板语法也有React的组件化体系。
  当你学会其中某个框架之后,你再转用其他框架的时候,学会是很容易的,因为方法都是大同小异的。具体的使用还是得看公司的项目适合或者要求哪个框架。之前在网上暗访了一下,看看有没有人这三个框架都十分精通的,但是很遗憾的发现,都用过的人不少,但是真正敢说精通的还是没有。这些框架学会使用还比较容易,但是里面的“水太深”,精通还需长久的时间,望大家共勉,一起学习进步呀!
————————————————
版权声明:本文为CSDN博主「重庆千锋」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qf2019/article/details/117443668

自动化运维工具

最受欢迎的 DevOps 工具(下)
08 Terraform
Terraform是可靠的DevOps工具之一,以提供基础结构即代码(IAC)功能而闻名。Terraform帮助用户创建,更新和版本化AWS基础架构。Terraform在DevOps中的应用从其扩展的功能集中获得了效率。候选人可以通过Terraform认证来将自己的职业提升到一个新的水平。
在这里插入图片描述

友好的自定义语法以及对Terraform中JSON的支持,正确地支持将其用作DevOps工具。它可以在更改发生之前提供更好的可见性。内置的图形功能可以帮助更好地实现基础架构可视化。

此外,AWS Terraform还了解资源关系。用户可以将配置分解为较小的组件,以提高组织,维护和可重用性的效率。最重要的是,它是一个开源项目,它定期接收来自大量贡献者社区的功能和更新。

09 Selenium
测试是项目工作流程中最关键的阶段。考虑到它的重要性,确保你正在测试程序中最无关紧要的组件也很重要。但是,手动测试源代码的每个代码片段是一项精疲力尽的任务。幸运的是,Selenium是一个DevOps工具,专门用于帮助开发人员创建自动回归测试以确保其程序按预期工作。
在这里插入图片描述

强大的Selenium框架允许开发人员以多种语言编写测试脚本,包括Python,Java,C#,PHP,JavaScript和Ruby等。此外,Selenium还支持多平台测试,这意味着它可以用于在iOS和Android移动平台上测试基于Web的应用程序。

由于其开源性质,Selenium经常进行更新以提供其他功能和选项。前面的内容使Selenium可以被归类为最好的DevOps工具之一。

10 Nagios
随着持续集成的引入和更新版本频率的增加,出现了对连续更新的更新进行持续监视的需求。为了满足这一确切需求,创建了一个名为Nagios的应用程序。Nagios是一个DevOps工具,用于在项目工作流程中集成持续监控。
在这里插入图片描述

该工具提供的便利性使组织可以监视其整个IT基础架构,包括应用程序,主机服务器和业务流程。Nagios能够定期监视和测试实时服务器中存在于应用程序中的插件,以确保一切正常进行。如果出现任何错误或资源不足,该工具会立即通知开发人员团队,以便他们可以在影响应用程序的整体工作之前解决该问题。

11 Chef
在你的IT基础架构中管理和配置多台服务器可能是一项耗时的任务。除此之外,在手动管理庞大的IT基础架构时,人为错误渗入并影响整个基础架构的机会相对较高。Chef是一个DevOps工具,可确保IT基础架构中的所有节点都已连接,并了解首选项中的任何添加或遗漏。
在这里插入图片描述

Chef可以通过手动更新所有可用节点以反映更改,从而更轻松地向你的IT基础结构中添加其他节点。此外,如果开发人员希望对服务器进行重大更改,Chef将识别出相同的内容并相应地更新所有连接的节点,从而消除了原本需要的人工。

12 Bamboo
Bamboo竹通常被称为Jenkins的替代品。Bamboo是CI / CD自动化服务器 DevOps工具,它在项目工作流中集成了持续集成。
在这里插入图片描述

Jenkins和Bamboo之间的区别在于,与Jenkins不同,Bamboo带有预先定义的价格标签。尽管大多数人会因为Jenkins的开源和自由性质而将Jenkins作为两者中更好的选择,但Bamboo具有自己的定义特征,使其对于特定领域的个人而言更为理想。

Bamboo预包装了一些内置功能,开发人员通常会使用Jenkins对其进行手动设置。这是为什么Bamboo与Jenkins支持1000多个插件相比,支持Bamboo超过100个插件的原因之一。对于那些希望消除手动设置功能需求的人来说,Bamboo是理想的DevOps工具。除此之外,就效率和生产力而言,Bamboo与Jenkins相当。

13 Raygun
Raygun是著名的高级崩溃报告和错误监视平台。他们广泛的产品选择中最新添加的是其应用程序性能监视工具,该工具可帮助组织在其工作流程中实施连续监视。Raygun始终检查主机服务器中的微服务和插件,并进行测试以确保它们正常运行。
在这里插入图片描述

由于Raygun的高级错误报告代码库,Raygun APM DevOps工具足够智能,可以将基础结构中潜在的中断通知开发人员团队。除上述功能外,Raygun的APM工具还能够确定错误的优先级,并允许开发人员团队更好地解决问题。该DevOps APM工具还使开发团队可以更轻松地解决该错误,因为该工具将问题追溯到引起该问题的确切代码行。

14 Snort
在管理你的IT基础架构时,安全至关重要。Snort是一个DevOps工具,专门为提供可靠的安全协议和系统而创建。凭借此DevOps工具的功能,分析和检测入侵或攻击比以往任何时候都更加方便。
在这里插入图片描述

此外,Snort还使你可以检查正在访问服务器和应用程序的流量数据。总而言之,Snort是可靠的DevOps工具,是安全管理的理想选择。

上述工具是你可以在工作空间内使用以提高整体效率的一些最佳DevOps工具。但是,为你的工作区选择最佳的DevOps工具取决于你的个人喜好和尝试使用列出的每个工具。

Terraform和Ansible的对比
Terraform和Ansible在初识时应该如何定位他们?它们的定位都是自动化的工具,应该如何选择?

    其实Terraform和Ansible是有功能重叠的。Terraform配置文件中的resource块,提供provisioner配置,连接到远程主机并进行类似ansible可执行的环境准备的操作。

    但是可以明确的是,Terraform目前更合适你的基础设施创建和管理,如创建你的云主机、负载均衡器等等;Ansible而是更适合你的云主机创建后,自动化地去初始化你的机器配置、安装组件、部署服务等。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值