首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏CSDN搜“看,未来”

    温故Linux后端编程(五):SOCKET网络编程

    define INET6_ADDRSTRLEN 46 //如果len太小,不足以容纳表达式结果,那么返回一个空指针,并置为errno - sockaddr 数据结构 struct sockaddr :很多网络编程函数的出现早于 ---- 网络套接字函数 基于流套接字的网络编程流程: //头文件 #include<sys/type.h> #include<sys/socket.h> - socket函数 //socket 补充3: 函数listen用来初始化服务器可连接队列。 服务器处理客户端连接时是顺序处理的,同一时间只能处理一个客户端连接。 bDontLinger = FALSE; setsockopt (s,SOL_SOCKET,SO_DONTLINGER,(const char*)&bDontLinger,sizeof(BOOL)); 3. 3.如果send函数copy数据成功,就返回实际copy的字节数,如果send在copy数据时出现错误,那么send就返回SOCKET_ERROR;如果send在等待协议传送数据时网络断开的话,那么send

    1.3K20发布于 2021-09-18
  • 来自专栏CSDN搜“看,未来”

    温故Linux后端编程(二):进程

    关于 操作系统 领域进程的概念:操作系统(2)进程 ---- 进程原语 fork #include <unistd.h> pid_t fork(void); 功能:子进程复制父进程中的0~3g空间和PCB (1)复制父进程的系统环境(放心,只要是你开的进程,肯定有父进程) (2)在内核中建立进程结构 (3)将结构插入到进程列表,便于维护 (4)分配资源给该进程 (5)复制父进程的内存映射消息 (6)管理文件描述符和链接点 是一个以NULL结尾的字符串数组指针,函数可以DOS的PATH变量查找子程序文件 */ if( fork() == 0 ) { // in clhild printf("3- 子进程成为僵尸进程 孤儿进程:父进程退出,而子进程没有退出,子进程成为孤儿进程 init进程:1号进程,负责收留孤儿进程,成为他们的父进程 有几种方式终止进程: (1)main返回 (2)调用exit (3

    1K20发布于 2021-09-18
  • 来自专栏CSDN搜“看,未来”

    温故Linux后端编程(三):线程

    对于UNIX系统,IEEE POSIX 1003.1标准定义了一个C语言多线程编程接口。依附于该标准的实现被称为POSIX theads 或 Pthreads。 1、提高程序的并发性 2、开销小,不需要重新分配内存 3、通信和共享数据方便 ---- 使用线程的优势 在同一个进程中的所有线程共享同样的地址空间。 (3)进程可以蜕变成线程,进程也可以说是主线程,就是高速路的主干道。 (4)在Linux下,线程是最小的执行单位,进程是最小的分配资源单位。 线程间资源共享情况 ⑴共享资源 1、文件描述符表 2、每种信号的处理方式 3、当前工作目录 4、用户ID和组ID 5、内存地址空间 ⑵非共享资源 1、线程id 2、处理器现场和栈指针 3、独立的栈空间 存在多个线程是按照其队列入队顺序唤醒其中一个 int pthread_cond_broadcast(pthread_cond_t * cptr); //广播,唤醒所哟与等待线程 条件变量与互斥锁 在服务器编程中常用的线程池

    92320发布于 2021-09-18
  • 来自专栏wuter

    JavaWeb后端入门3—DBUtils

    就是对JDBC的简单封装 为何要学习 因为JDBC手写比较麻烦,且有很多代码是类似的,比如获得链接、预编译SQL、释放资源等 可以将这些代码抽取出来放到工具类中,将类似的代码进行抽取,大大简化UJDBC的编程 , "eee",20000,4); } 3.3 删除 /** * 删除操作 * @throws SQLException */ @Test public void demo3() throws , 3); } 4. com.itheima.DBUtils.domain.Account; import com.itheima.jdbc.utils.JDBCUtils2; import com.mchange.v2.c3p0 DBUtils的ResultSetHandler实现类3—MapHandler和MapListHandler 7.1 概述 MapHandler:将一条记录封装到一个Map集合中,Map的key是列名,

    23810编辑于 2025-04-03
  • 来自专栏小闫笔记

    Python后端技术栈(五)--网络编程

    我们需要在服务端给用户生成一个标识,然后每次让客户端带过去给后端。 这就是我们通常识别用户会话的一个思路。 1.5.3网络编程 1.5.3.1 TCP socket 编程原理 我们需要从下列问题入手: 1.如何使用 socket 模块 2.如何建立 TCP socket 客户端和服务端 3.客户端和服务端之间的通信 上面的图片就是 TCP 的 socket 编程流程图。 1.5.4.1五种 IO 模型 Unix 网络编程中提到了5种网络模型 1.Blocking IO(阻塞的 IO) 2.Nonblocking IO(非阻塞的 IO) 3.IO multiplexing 3.Asyncio Python3 内置的并发网络库,基于原生协程。

    96130发布于 2019-07-18
  • 来自专栏CSDN搜“看,未来”

    温故Linux后端编程(一):文件IO

    引用一句经典的话:“UNIX下一切皆文件”。 文件是一种抽象机制,它提供了一种方式用来存储信息以及在后面进行读取。

    91220发布于 2021-09-18
  • 来自专栏AVAJ

    面试java后端面经_3

    1 自我介绍哈(这块没有一点准备的可以看面试java后端面经_1) 2 类加载的三种方式(1:命令行启动应用时由JVM初始化加载 2:通过Class.forName() 方式动态加载 3:通过ClassLoder.loadClass () 方法动态加载) 3 如何判断对象已死(1:引用计数法(java中没用,因为,没办法解决循环引用:A引用B,B也引用A,但是没有其他引用去引用A和B,这时AB都是垃圾,但是引用计数法无法判断)。 3方法区中常量引用的对象。 3标记整理算法:先标记清除再整理。 3.性能最化,fork子进程来完成写操作,让主进程继续处理命令。4.相对于数据集大时,比AOF启动效率高。

    53620发布于 2019-08-20
  • 来自专栏叽叽西

    阿里Java编程规约【十】 前后端规约

    3)请求方法:对具体操作的定义,常见的请求方法如下:  a)GET:从服务器取出资源。  b)POST:在服务器新建一个资源。  c)PUT:在服务器更新资源。   【强制】前后端数据列表相关的接口返回,如果为空,则返回空数组[]或空集合{}。 说明:此条约定有利于数据层面上的协作更加高效,减少前端很多琐碎的 null 判断。 3. 3)403 Forbidden:服务器拒绝请求,常见于机密信息或复制其它登录用户链接访问服务器的情况。 4)404 NotFound:服务器无法取得所请求的网页,请求资源不存在。 反例:通常在订单号或交易号大于等于 16 位,大概率会出现前后端订单数据不一致的情况。 【强制】在翻页场景中,用户输入参数的小于 1,则前端返回第一页参数给后端后端发现用户输入的参数大于总页数,直接返回最后一页。 10.

    1.2K20编辑于 2022-05-17
  • 来自专栏前端精读评论

    3. 精读《前后端渲染之争》

    明确三个概念:「后端渲染」指传统的 ASP、Java 或 PHP 的渲染机制;「前端渲染」指使用 JS 来渲染页面大部分内容,代表是现在流行的 SPA 单页面应用;「同构渲染」指前后端共用 JS,首次渲染时使用 一般来说同构渲染是介于前后端中的共有部分。 2 内容概要 前端渲染的优势 局部刷新。无需每次都进行完整页面请求 懒加载。 3 精读 本次提出独到观点的同学有:@javie007 @杨森 @流形 @camsong @Turbe Xue @淡苍 @留影 @FrankFang @alcat2008@xile611 @twobin 然而近3年过去了,很多产品逐渐从全栈同构的理想化逐渐转到首屏或部分同构。让我们再一次思考同构的优点真是优点吗? 3 总结 我们赞成客户端渲染是未来的主要方向,服务端则会专注于在数据和业务处理上的优势。但由于日趋复杂的软硬件环境和用户体验更高的追求,也不能只拘泥于完全的客户端渲染。

    1.2K20编辑于 2022-03-14
  • 来自专栏python3

    切面编程(3)

    过滤器相对比较简单了 public class WebFiler implements Filter{     //在bean销毁的时候执行 @Override public void destroy() { System.out.println("destroy"); } @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain filter) thr

    29720发布于 2020-01-07
  • 来自专栏changxin7

    3.网络编程 网络编程

    还有一些其他的地址家族,不过,他们要么是只用于某个平台,要么就是已经被废弃,或者是很少被使用,或者是根本没有实现,所有地址家族中,AF_INET是使用最广泛的一个,python支持很多种地址家族,但是由于我们只关心网络编程 head_dic_bytes_size = struct.unpack('i',ret)[0] # # 3,接收 head_dic_bytes数据。 与客户端建立连接, 拨号 # 1 制定file_info file_info = { 'file_path': r'D:\lnh.python\pyproject\PythonReview\网络编程 every_data) phone.send(every_data) phone.close() client端 FTP上传下载文件的代码(升级版)(注:咱们学完网络编程就留 网络编程的作业   好了同学们,到了这儿,我们的网络编程socket就讲完了,大致就是这些内容,给大家留个作业:(你的努力的成果你自己是看的到的~!)   

    2.9K21发布于 2019-08-20
  • 来自专栏码农编程进阶笔记

    浅析2025年后端编程发展趋势

    2025年后端编程热门技术 随着技术的不断发展,2025年的后端编程可能会有多种热门技术。云原生技术将持续火热,云原生应用强调将应用程序完全构建和部署在云环境中,充分利用云计算的优势。 2025年后端编程必备技能 掌握后端编程语言 首先,掌握一门或多门后端编程语言是至关重要的。 Python:语法简洁易懂,拥有丰富的第三方库,适合快速开发和数据科学领域。 2025年后端编程主流语言 Python Python在2025年有望继续保持其在后端编程中的重要地位。 Go语言的这些特性使得它在构建云原生架构的后端应用时具有天然的优势。 2025年后端编程就业方向 企业级应用开发 企业级应用开发是后端编程的一个重要就业方向。 例如在AWS中,开发人员需要构建弹性计算云(EC2)、简单存储服务(S3)等核心云服务的后端逻辑,确保这些服务能够高效地为用户提供计算、存储等资源。

    3.1K11编辑于 2024-11-29
  • 来自专栏CSDN搜“看,未来”

    温故Linux后端编程(四):膜拜《TCPIP 卷一》

    ---- IP首部 IP数据报的格式如图3 - 1所示。普通的IP首部长为20个字节,除非含有选项字段。 分析图3 - 1中的首部。最高位在左边,记为 0 bit;最低位在右边,记为31 bit。 3) 客户必须将确认序号设置为服务器的 ISN加1以对服务器的SYN报文段进行确认(报文段3)。 这三个报文段完成连接的建立。 为了使用这个特性,编程接口必须为应用程序提供一种方式来说明“我已经完成了数据传送,因此发送一个文件结束( FIN)给另一端,但我还想接收另一端发来的数据,直到它给我发来文件结束(FIN)”。 如果一连串收到 3个或3个以上的重复ACK,就非常可能是一个报文段丢失了。于是我们就重传丢失的数据报文段,而无需等待超时定时器溢出。这就是快速重传算法。 接下来执行的不是慢启动算法而是拥塞避免算法。 这个算法通常按如下过程进行实现: 当收到第3个重复的ACK时,将ssthresh设置为当前拥塞窗口 cwnd的一半。重传丢失的报文段。设置cwnd为ssthresh加上3倍的报文段大小。

    92910发布于 2021-09-18
  • 来自专栏深入理解Android

    从零开始学后端3)——JDBC基础

    JDBC相关的API 操作JDBC的步骤: 1):加载注册驱动. 2):获取连接对象. 3):创建/获取语句对象 4):执行SQL语句 5):释放资源 Connection接口的常用方法 创建DAO对象规范: 1):DAO对象起名,统统叫做xxxDAO. 2):面向接口编程,把DAO对象赋给DAO接口类型. IEmployeeDAO employeeDAO= new EmployeeDAOImpl(); DAO操作步骤: 1:先创建一张表. 2:根据表的结构,创建domain对象. 3):创建

    70120编辑于 2022-06-22
  • 来自专栏高性能服务器开发

    3 游戏后端开发需要掌握的知识

    Server服务器之间是不通信的 带负载均衡 一个Gate Server的对应多个Game Server 各个GateServer之间可以互相通信,而且还可以随意扩展,通过配置文件可以实现配置 3

    1.6K31发布于 2018-07-25
  • 来自专栏Frost's Blog

    Flask前后端分离实践:Todo App(3)

    作者按: 几天前我收到一封邮件,有读者说看了我的前后端分离实践的文章获益很多。然而我却丧尽天良的断更了?不行不行,我不是这样的人,所以一年后,我再补上这个系列最后一篇文章吧。 那么我们来到前后端分离的世界,CSRF应该如何做呢?因为是前后端分离,所以服务端产生的CSRF值并不能实时更新到页面上,页面的更新全都要依赖客户端去主动请求。 实际开发中,前端和后端可能完全是分离部署,通过nginx等其他web服务器返回的。这样一来,{{ csrf_token() }}就完全没机会透给前端。不要紧,我们还可以用Cookies嘛。 大概流程是,第一次打开页面时,请求后端,如果没登录,则返回401让前端跳转登录,如果是登录状态,则返还一个Token,这个token自带某些用户信息,和过期时间。 总结 好了,我想这三篇文章已经覆盖了前后端分离与传统MVC架构的主要区别和开发技巧,当然还有更多的点我没法覆盖到,欢迎到评论区或邮件骚扰我。

    2.2K10发布于 2019-11-29
  • 来自专栏又见苍岚

    Python CUDA 编程 - 3 - GPU编程介绍

    本文介绍GPU编程的一些重要概念。 GPU编程 GPU编程与CPU编程的思考角度不尽相同,举皮皮鲁老师的一个例子: 以加法计算为例,CPU就像大学数学教授,GPU就像几千个小学生,现在需要不借助外界,只通过纸笔,对2000个数字进行加法计算 以上讨论中,Block和Grid大小均是一维,实际编程使用的执行配置常常更复杂,Block和Grid的大小可以设置为二维甚至三维: 一个二维的执行配置如上图所示,其中,每个Block有(3 * 4)个 Thread,每个Grid有(2 * 3)个Block。 1维或3维的时候,可以将参数改为1或3

    2.4K20编辑于 2022-08-04
  • 来自专栏Golang语言社区

    实效go编程--3

    并发 通过通信共享内存 并发编程是个很大的论题。但限于篇幅,这里仅讨论一些Go特有的东西。 在并发编程中,为实现对共享变量的正确访问需要精确的控制,这在多数环境下都很困难。

    1K70发布于 2018-03-26
  • 来自专栏lsqingfeng

    面向对象编程3

    3)定义Dog类继承于Animal类,其中包括属性furColor,相关构造方法,同时具体化父类中的抽象方法。 (3)编写非抽象类Print,该类实现了接口InterfaceA和InterfaceB。 'Z';i++) { System.out.print(i+" "); } System.out.println(); } } public class InterfaceDemo33)定义接口C,该接口继承了接口A和B,里面包含抽象方法void volume()。 (3)编写另一个非抽象类Pro来实现接口OneToN,实现int dispose (int n)接口方法时,要求计算1 * 2 * … * n。

    55840编辑于 2021-12-13
  • 来自专栏大前端开发

    编程小白到全栈开发:理解前后端

    编程,如果说有捷径的话,实操就是最好的捷径! 至此,我们在自己的电脑上为学习JS全栈开发安装好了开发环境,并在这一环境下,运行了两个你可能还看不太懂的前、后端代码。 前端和后端的异同 JS在前端和后端中的写法,几乎是完全一样的(即使有不一样,我们也有手段让它们变得都一样,哈哈)。 不同点是,由于前端的浏览器和后端的Node.js开放给我们的能力不同,就有了完全不同的功能接口(我们叫做API,以后会经常提到,记住这个词哦)。 但是万变不离其宗,不管是前端还是后端,我们都只是在使用JS语言去调用浏览器API或是Node.js API,组合出我们需要的功能而已。 多动手,多思考,编程其实很容易。 欢迎关注一斤代码的系列课程《从编程小白到全栈开发》

    78540发布于 2018-08-21
领券