一篇搞懂TCP、HTTP、Socket、Socket连接池

前言:作为一名开发人员我们经常会听到HTTP协议、TCP/IP协议、UDP协议、Socket、Socket长连接、Socket连接池等字眼,然而它们之间的关系、区别及原理并不是所有人都能理解清楚,这篇文章就从网络协议基础开始到Socket连接池,一步一步解释他们之间的关系。七层网络模型首先从网络通信的分层模型讲起:七层模型,亦称OSI(OpenSystemInterconnection)模型。自下
分类: 企业开发 发布时间: 08-01 23:10 阅读次数: 0

好程序员web前端学习路线nodeJs学习过程之认识nodejs

  好程序员web前端学习路线nodeJs学习过程之认识nodejs,nodeJs只是听说过,没见过,没玩过。从新手开始,我想慢慢掌握它。  首先,我想知道nodeJs是什么?干什么用的。  来源于node官网与网络:Node.js是一个基于ChromeV8引擎的JavaScript运行环境。Node.js使用了一个事件驱动、非阻塞式I/O的模型,使其轻量又高效。Node.js是一套用来编写高性能
分类: 服务端 发布时间: 08-01 23:10 阅读次数: 0

ngix启动出现报错:nginx: [emerg] bind() to 0.0.0.0:443 failed (10013: An attempt was made to access a socket in a way forbidden by its access permissions)

运行 cmd, 输入netstat -aon|findstr "443" 找到 0.0.0.0:443,找到 PID,在任务管理器结束进程。 vmware-hostd.exe
分类: 其他 发布时间: 08-01 23:04 阅读次数: 0

c++---面试题

>虚函数继承后的内存模型https://home.cnblogs.com/u/feliz/
分类: 其他 发布时间: 08-01 23:04 阅读次数: 0

Spring MVC----异常处理

Controller 方式1; //处理异常,注意入参中,不能有Model,Map等,如果需要给requestion添加对象,使用ModelAndView @ExceptionHandler({ArithmeticException.class}) public ModelAndView ArithmeticException(Exception ex){ ModelAndView modelAndView = new ModelAndView("
分类: 其他 发布时间: 08-01 23:04 阅读次数: 0

缓存穿透、缓存雪崩、缓存击穿、缓存热点分析及解决方案

大纲 1.缓存正常使用流程 2.缓存穿透 3.缓存击穿 4.缓存雪崩 5.缓存热点 1.缓存的使用   一般缓存的正常使用流程是,先根据key从缓存中获取,如果缓存中存在数据则返回,不存在则到数据库中获取,获取到则更新到缓存,并将数据返回,没有获取到则抛出异常或返回空值; 2.缓存穿透   指缓存和数据库都没有的数据。   场景:被黑客攻击,故意访问大量不存在的数据,此时有可能将系统搞崩。   解决方案1:增加key值校验,直接过滤不满足条件的key;   解决方案2:如果查询存储系统即数据库
分类: 其他 发布时间: 08-01 23:04 阅读次数: 0

Spark 分布式计算原理

Spark 分布式计算原理 Spark Shuffle 1)在数据之间重新分配数据 2)(将父RDD重新定义进入子RDD)每一个分区里面的数据要重新进入新的分区 3)每一个shuffle阶段尽量保存在内存里面,如果保存不下到磁盘 4)在每个shuffle阶段不会改变分区的数量 RDD的依赖关系-1(lineage) 1) 宽依赖:一个夫RDD的分区被子RDD的多个分区使用 发生宽依赖一定shuffle() (相当于超生) 2) 窄依赖:一个父RDD的分区被子RDD的一个分区使用
分类: 其他 发布时间: 08-01 23:04 阅读次数: 0

如何检测和删除通过pip安装的Python包?

https://ubuntuqa.com/article/1227.html
分类: 其他 发布时间: 08-01 23:04 阅读次数: 0

为什么多线程要加锁

直接看图就明白:
分类: 其他 发布时间: 08-01 23:04 阅读次数: 0

C语言 结构体内存对齐

结构体 typedef struct Test { char a1; int a2; char a3; short a4; }Test_T; 内存排布图如下 参考: https://blog.csdn.net/zhengnianli/article/details/87390212
分类: 其他 发布时间: 08-01 23:04 阅读次数: 0

vue基本语法概要(一)

先看两种代码,再进行讲解 第一种格式: <template > <div> <div v-for=" item in sites "> <li>{{item.name}}</li> <li>---------</li> </div> </div> </template> <script> export default { name: "v-if", data() { return { site
分类: 其他 发布时间: 08-01 23:04 阅读次数: 0

一个系列搞定校招——综合篇

又到一年校招季,各大公司忙着抢人,特别是提前批,基本都是招聘研发岗,那么准备找研发岗位的同学们,都准备好了吗?这里准备写一个系列的关于校招研发岗位的分享文章,希望能帮助同学们更好的应对校招,拿到自己心仪的offer。今天首先从总体上介绍一下研发岗位求职的各个环节,让大家对自己找工作有一个整体的了解,今天的分享分为简历、笔试、面试以及个人建议这4个部分。 1. 简历 简历是敲门砖,一份好的简历是一定会给你带来更多机会的。从我内推的简历来看,我把他们分为四类: 教育背景好+项目经历丰富 教育背景好
分类: 其他 发布时间: 08-01 23:04 阅读次数: 0

UVA - 1230

https://vjudge.net/problem/UVA-1230 费马小定理优化快速幂 #include <iostream> #include <cstdio> #include <queue> #include <algorithm> #include <cmath> #include <cstring> #define inf 2147483647 #define N 32800 #define p(a) putchar(a) #define For(i,a,b)
分类: 其他 发布时间: 08-01 23:04 阅读次数: 0

V_REP中Plugin控制机制实例

plugin机制是V-REP六种控制机制的一种,最大的优点就是无延迟(lag),计算速度快。可以和V-REP中的嵌入脚本(embeded scripts)实现无缝连接。这是remote API client所不能做到的。 六种控制机制的比较: Plugin V-REP automatically loads all plugins that it can find in its folder V-REP recognizes plugin files with following mask:
分类: 其他 发布时间: 08-01 23:04 阅读次数: 0

k8s入门操作

kubectl -->apiserver 管理工具 管理k8s集群 增删改查node kubectl get service/node/replicaset/deployment/statefulet/daemonset/job/cronjob kubectl --help 查看所有用法 kubectl describe node node1 查看描述节点 kubectl version 查看版本 kubectl cluster-info 查看集群 增 kubectl run --help k
分类: 其他 发布时间: 08-01 23:04 阅读次数: 0

python对图片批量命名

深度学习中经常会有批量对图片进行重命名,从网上看到的资料整理一下,方便以后查看。 import os class BatchRename(): ''' 批量重命名文件夹中的图片文件 ''' def __init__(self): self.path = 'C:/Users/JingPan/Desktop/data_json' #表示需要命名处理的文件夹 def rename(self): file
分类: 其他 发布时间: 08-01 23:04 阅读次数: 0

专为程序员设计的统计课

第1章 课程介绍【欢迎学习,学习中有任何疑问请在问答区进行问答,祝愉快学习!】 本章将介绍统计学的思考方式,统计学的整体框架,学习统计学有什么用,以及统计学与机器学习的密切联系;并对学习此门课程讲解的形式(编程+可视化)和需要具备的知识和技能进行说明,让大家从这个课程开始,真正学懂统计学!... 第2章 认识数据【必备基础知识,不能跳过】 数据是统计学处理的对象,而数据是由变量组成的。本章将讲解什么数据和变量,以及变量的类型和测量尺度。这些基本概念是统计分析的基石。 第3章 描述统计【核心内容
分类: 其他 发布时间: 08-01 23:04 阅读次数: 0

web服务器统计情况

https://w3techs.com/technologies/overview/web_server/all
分类: 其他 发布时间: 08-01 23:04 阅读次数: 0

编写程序对文件进行增删改查

import os def fetch(data): print('\033[1;41m这是查询功能\033[0m') print('\033[1;41m用户数据\033[0m', data) backend_data = 'backend %s' %data with open ('lala.conf', 'r', encoding = 'utf-8') as read_f: tag = False ret = [
分类: 其他 发布时间: 08-01 23:04 阅读次数: 0

[转载] $CF952E$ 题解

阅读原文 这是一道 \(CodeForces\) \(2018\) 年愚人节比赛的 \(E\) 题。 题意是给出 \(n\) 块奶酪的名字(确保每块名字不同)和硬度(分为软和硬两种),请将其放入一张特制的国际象棋棋盘内,使得软硬奶酪分开(行和列上都不允许有连续的相同硬度的奶酪)。求出棋盘最小的边长(每格算作 \(1\) 个单位长度)。 因为保证每块奶酪名字不同,最后排入棋盘时也与奶酪名无关,所以读入后可以直接舍弃。软硬度的大小才是关键。又因为排入棋盘时与奶酪顺序无关,所以只需要记录总的软奶酪数
分类: 其他 发布时间: 08-01 23:04 阅读次数: 0