WEB 应用威胁有哪些?
在之前的小节中,我们谈到网络的整个链路很长,每一个环节都有可能存在危险。这种威胁可能是物理硬件,操作系统,操作系统上面的软件漏洞,协议漏洞,甚至是人的某些行为导致,场景非常多而本节主要聚焦 Web 层面的安全问题。
Web 安全简介
Web 安全是个大课题,面对层出不求的黑客漏洞,个人能力很有限制,所以这边介绍一个平台 国家信息安全漏洞共享平台,可以到上面注册个账号,并订阅漏洞信息报送。
more >>用最初的心,做永远的事.
在之前的小节中,我们谈到网络的整个链路很长,每一个环节都有可能存在危险。这种威胁可能是物理硬件,操作系统,操作系统上面的软件漏洞,协议漏洞,甚至是人的某些行为导致,场景非常多而本节主要聚焦 Web 层面的安全问题。
Web 安全是个大课题,面对层出不求的黑客漏洞,个人能力很有限制,所以这边介绍一个平台 国家信息安全漏洞共享平台,可以到上面注册个账号,并订阅漏洞信息报送。
more >>本节我们将借助 Socket 实现服务的端口监听并根据 Http 协议的请求和响应结构,实现一个简单的 Web 服务器,加深体验 Web 服务和 Http 协议的原理。
浏览器每发起一次请求都需要跟服务端建立连接,服务端要时刻监听有没有客户端连接。传输层协议有 TCP/UDP 两种,实现起来并没有强制说用哪一种,下面是官方文档对 Http 连接的说明:
HTTP communication usually takes place over TCP/IP connections. The default port is TCP 80 .
文档中指明了连接通常用的是 TCP, TCP 不用考虑数据包乱序,丢失这些问题,实现起来更简单,高效。在代码层我们可以用 Socket 来实现我们的 TCP 传输服务。
more >>前面讲过的 Httpd 和 Tomcat 以及这个小节所讲的 Nginx 都是 Web 服务器,他们三者发展到今天并没有很明显地成为某个产品一枝独秀的强垄断局面,因为他们有各自的特点和适用的场合,在某些场合他们甚至可以共用达到互补的功能。
Nginx 是由俄罗斯工程师伊戈尔·赛索耶夫开发的,同样是开源免费的。虽然它和 Httpd 与 Tomcat 都称为 Web 服务器,但是它的功能强大得简直不像是个 Web 服务器,比如它的反向代理和负载均衡,几乎成了现在 Web 应用的必备基础设施。与此同时它的高并发处理能力也是很强大的,是 Httpd 强有力的竞争者。至于实现 Servlet 规范的 Tomcat 倒是替代不了,因为 Nginx 不支持。
一个比较好的微服务解决方案:可以通过认证服务进行统一认证,然后通过网关来统一校验认证和鉴权。此方案为目前最新方案,仅支持Spring Boot 2.2.0、Spring Cloud Hoxton 以上版本。
我们将采用Nacos作为注册中心,Gateway作为网关,使用nimbus-jose-jwt
JWT库操作JWT令牌。
使用Seata彻底解决Spring Cloud中的分布式事务问题!
Seata是Alibaba开源的一款分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务,本文将通过一个简单的下单业务场景来对其用法进行详细介绍。
单体应用中,一个业务操作需要调用三个模块完成,此时数据的一致性由本地事务来保证。
more >>刚入门 Web 的小伙伴很容易迷失在 Apache、Tomcat、Httpd、Nginx 这些陌生词汇中,所以在开始本章节的内容前我们先来认识下它们。
全球最权威的软件开源协会,很多公司会把自己内部的一些系统开源并提交申请给 Apache,让 Apache 统一来管理这些开源项目为全世界的软件做贡献,同时也提升了公司的知名度和一些商业的战略价值。尴尬的一点是早期的 Http Server 就叫做 Apache,后来的版本改名为 Httpd 了,所以很多人习惯说 Apache 服务器,其实默认指的是 Httpd;
more >>Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案,Sentinel 作为其核心组件之一,具有熔断与限流等一系列服务保护功能,本文将对其用法进行详细介绍。
随着微服务的流行,服务和服务之间的稳定性变得越来越重要。 Sentinel 以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。
more >>Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案,Nacos 作为其核心组件之一,可以作为注册中心和配置中心使用,本文将对其用法进行详细介绍。
Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。
Nacos 具有如下特性:
tag:
缺失模块。
1、请确保node版本大于6.2
2、在博客根目录(注意不是yilia根目录)执行以下命令:
npm i hexo-generator-json-content --save
3、在根目录_config.yml里添加配置:
jsonContent: meta: false pages: false posts: title: true date: true path: true text: false raw: false content: false slug: false updated: false comments: false link: false permalink: false excerpt: false categories: false tags: true