前端和后端是计算机行业最常用的两个术语;在某种程度上,它们成了流行语。它们决定了你作为软件开发人员的工作类型、你使用的技术以及你得到的报酬。如果你对前端感兴趣,可以报名参加Web前端培训,通过系统全面的学习和专业老师的面授指导教学,你可以获得快速进步。那么,让我们来谈谈这两
1. 传统分类 反射型XSS (Reflected XSS) 当web应用在搜索结果,错误消息或其他响应返回用户输入时,就会发生反射型XSS。最常见的做法 是攻击者利用web应用的xss漏洞,构造一个url,通过邮件短信等方式诱导用户点击,当请求发出后, web应用返回url中隐藏的恶意代码,并在用户浏览器中执行,从而
一个菜鸟的设计模式之旅,文章可能会有不对的地方,恳请大佬指出错误。 编程旅途是漫长遥远的,在不同时刻有不同的感悟,本文会一直更新下去。 程序介绍 本程序实现收银员对顾客收银时可以采用不同的促销策略,支持原价,按折扣促销,满多少返利多少三种策略。使用策略模式与简单工厂模式。简
网络编程 笔记目录:(https://www.cnblogs.com/wenjie2000/p/16378441.html) 网络基础 网络通信 概念:两台设备之间通过网络实现数据传输 网络通信:将数据通过网络从一台设备传输到另一台设备 java.net包下提供了一系列的类或接口,供程序员使用,完成网络通信 网络 概念:两台或多
一、作用和架构 1. 作用 Redis Sentinel,即Redis哨兵,在Redis 2.8版本开始引入。哨兵的核心功能是主节点的自动故障转移。下面是Redis官方文档对于哨兵功能的描述: 监控(Monitoring):哨兵会不断地检查主节点和从节点是否运作正常。 自动故障转移(Automatic failover)或选主:当主节点不能正
IM多人聊天室功能简介 ZIM SDK 提供多人房间聊天功能,支持用户向房间内发送文本消息或自定义消息,实现了多人在线交流、同步分享。 多人房间聊天功能可应用于小班课或者会议室等场景,房间成员数量上限请参考 计费说明。 IM房间管理功能的前提条件 在实现“房间管理”功能之前,请确保:
1、Elasticsearch java 客户端为什么要选型? Elasticsearch 官方提供了很多版本的 Java 客户端,包含但不限于: Transport 客户端 Java REST 客户端 Low Level REST 客户端 High Level REST 客户端 Java API 客户端 非官方的 Java 客户端,包含但不限于: Jest 客户端 BBoss 客户端 Spr
在日常生产生活中,我们常说,“安全第一”、“安全无小事”。围绕着安全问题,在各行各业都有对各类常见安全问题的解决方案和突发安全问题的应急预案。在互联网、软件开发领域,我们日常工作中对各类常见的安全问题又有哪些常见的解决方案呢?在此,结合经典架构图做一个梳理。 经典架构图
对于同步API而言,程序的吞吐量并不高。因为在每次发送一个gRPC请求时,会阻塞整个线程,必须等待服务端的ack回到客户端才能继续运行或者发送下一个请求,因此异步API是提升程序吞吐量的必要手段。 gRPC异步操作依赖于完成队列CompletionQueue 官网教程:https://grpc.io/docs/languages/cp
HTTP 是什么? HTTP 是超文本传输协议,也就是HyperText Transfer Protocol。 详细解释「超文本传输协议」? HTTP的名字「超文本协议传输」,它可以拆成三个部分: 1、协议 协议的特点:「协」字,代表的意思是必须有两个以上的参与者。例如三方协议里的参与者有三个:你、公司、学校三个;租房协
Nginx进程模型解析 master进程: 主进程 worker进程: 工作进程 默认是一个主进程, 一个工作进程, Nginx的工作进程是可以通过配置文件进行修改的 # 工作进程数量 worker_processes 1; 修改nginx.conf配置, 修改为2 记得每次修改完成配置文件都进行检查一下, 避免发生错误
作者:小林coding 计算机八股文网站:https://xiaolincoding.com 大家好,我是小林。 如果「服务端挂掉」指的是「服务端进程崩溃」,服务端的进程在发生崩溃的时候,内核会发送 FIN 报文,与客户端进行四次挥手。 但是,如果「服务端挂掉」指的是「服务端主机宕机」,那么是不会发生四次挥手的,
数据库的事务隔离级别 目录数据库的事务隔离级别事务的隔离级别,隔离的是什么?什么是事务?什么是隔离性,隔离的是什么?隔离级别-序列化读(SERIALIZABLE READ)合理性讨论:使用数据库级别作为互斥资源,有这么必要吗?使用数据库的表作为互斥资源可重复读(REPEATABLE_READ)读已提交(READ_COMM
背景 假设现在有三台机器,分别安装了redis服务,结构如图 故障发生:如果此时master服务器所在区域网络通信出现异常,导致和两台slave机器无法正常通信,但是和客户端的连接是正常的。那么sentinel就会从两台slave机器中选举其中一个作为新的master来处理客户端请求。如图 这个时候,已经
TCP编程 使用Socket进行网络编程时,本质上就是两个进程之间的网络通信。其中一个进程必须充当服务器端,它会主动监听某个指定的端口,另一个进程必须充当客户端,它必须主动连接服务器的IP地址和指定端口,如果连接成功,服务器端和客户端就成功地建立了一个TCP连接,双方后续就可以随时发送和
UDP编程 和TCP编程相比,UDP编程就简单得多,因为UDP没有创建连接,数据包也是一次收发一个,所以没有流的概念。 在Java中使用UDP编程,仍然需要使用Socket,因为应用程序在使用UDP时必须指定网络接口(IP)和端口号。注意:UDP端口和TCP端口虽然都使用0~65535,但他们是两套独立的端口,即一个应用程序
当客户端去连接服务端时,端口号是随机的,如果需要指定客户端端口号,就不要指定IP,否则会一直报错的,程序如下: netAddr := &net.TCPAddr{Port: 51860} d := net.Dialer{LocalAddr: netAddr} conn, err := d.Dial("tcp", "127.0.0.1:38001") if err != nil { fm
Astro和岛屿建筑 Photo by 卢卡斯戴维斯 on 不飞溅 又到了引入新 JavaScript 框架的时候了。今天是新的框架 天文 几周前在其第一个完整的 1.0 版本中发布。但是,是什么让 Astro 和它的“孤岛架构”在无尽的 JavaScript 框架世界中与竞争对手如此不同。让我们来看看。 我会将 As
客户端和服务器端 1、Ribbo是一个基于HTTP和TCP的客户端负载均衡器,当我们将Ribbon和Eureka一起使用时,Ribbon会从Eureka注册中心去获取服务端列表,然后进行轮询访问以到达负载均衡的作用,客户端负载均衡中也需要心跳机制去维护服务端清单的有效性,当然这个过程需要配合服务注册中心一
Redis安装说明 大多数企业都是基于Linux服务器来部署项目,而且Redis官方也没有提供Windows版本的安装包。因此课程中我们会基于Linux系统来安装Redis. 此处选择的Linux版本为CentOS 7. Redis的官方网站地址:https://redis.io/ 1.单机安装Redis 1.1.安装Redis依赖 Redis是基于C语言编
示例: 192.168.169.1 - - [07/Jun/2022:11:42:40 +0800] "GET / HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36" log_format access # 定
多角度优化 HTTPS 分析性能损耗 产生性能消耗的两个环节: TLS 协议握手过程;(TLS 协议握手过程最长可以花费 2 RTT<mean:网络延时>) 握手后的对称加密报文传输。 解决方案: 对于1,暂时没有办法。 对于2, 现在主流的对称加密算法 AES、ChaCha20 性能都是不错的,⽽且⼀些 CPU ⼚商还针
在上篇介绍中,我们为购买的域名向域名平台提交了安全证书的申请,经过一段时间的审核,域名平台会通过邮件/短信方式通知我们证书申请通过,也意味着我们可以将证书部署到cpolar客户端,让我们能使用https协议访问群晖NAS上的网页。现在,就让我们开始操作吧。 首先,我们需要回到域名平台的SSL
3种优化思路: 尽量避免发送 HTTP 请求; 在需要发送 HTTP 请求时,考虑如何减少请求次数; 减少服务器的 HTTP 响应的数据大小; 一、尽量避免发送HTTP请求 实现方法: 对于⼀些具有重复性的 HTTP 请求采用 缓存技术 具体过程: 客户端收到第⼀个请求的响应后,可以将其缓存在本地磁 盘,下
一:HTTP 与 HTTPS 有哪些区别?(1)HTTP 是超文本传输协议,信息是明文传输,存在安全风险的问题。HTTPS 则解决 HTTP 不安全的缺陷,在 TCP 和 HTTP 网络层之间加入了 SSL/TLS 安全协议,使得报文能够加密传输。(2)HTTP 连接建立相对简单, TCP 三次握手之后便可进行 HTTP 的报文传输。而 HTTPS 在