自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 收藏
  • 关注

原创 【负载均衡式在线OJ】 数据库

将来我们可以把这三个编译服务部署到三台不同的机器上,然后我们只需要改我们的配置文件,把ip地址和端口号一改,然后oj_server就知道了,然后他就可以负载均衡式的去请求我们的编译服务。接下来访问数据库,我们本来需要数据库官方提供的一些链接去连接数据库,有可能你的系统中,已经默认安装了mysql的开发包。我们的oj_server基于MVC模式的,和数据打交道的只有一个oj_model模块,只需要更改该文件即可!因为当前在我们后端,连接的服务端有三台,所以接下来,复制三个SSH渠道。

2023-05-21 19:35:12 710

原创 【mysql】库的操作+表的操作

备份mysqldump - P3306 - u root - p 密码 - B 数据库名 > 数据库备份存储的文件路径示例:将mytest库备份到文件(退出连接)

2023-05-21 11:33:06 437

原创 unity中如何给多个物体一键设置Mesh Collider

1.选中目标文件,右击选Select Children。

2023-05-02 12:12:34 422

原创 【http】 get方法和Post方法区别;http和https

通过url传参,回显输入的私密信息,不够私密:通过正文传参,不会回显,一般私密性有保证。一般如果上传的图片,音频比较大,推荐Post方法,比较容易解析。

2023-04-17 11:19:03 663

原创 【Linunx报错】程序在运行时无法找到一个名为 “libctemplate.so.3“ 的共享库文件

第一个报错:这个错误信息提示你的程序在运行时无法找到一个名为 “libctemplate.so.3” 的共享库文件,因此无法加载该库文件。这可能是因为该库文件未被正确安装或未被正确配置。要解决这个问题,你可以尝试以下几个步骤:1.检查该库文件是否已经安装。你可以使用以下命令来搜索该库文件:如果该库文件已经安装,它应该会显示在搜索结果中。如果没有找到该库文件,则需要安装它。2.如果该库文件已经安装,你可以尝试将其路径添加到 LD_LIBRARY_PATH 环境变量中。你可以使用以下命令将该库文件路径添加到

2023-04-15 10:59:04 811 1

原创 【网络版计算器】

如果我们需要实现一个服务器版的加法器. 我们需要客户端把要计算的两个加数发过去, 然后由服务器进行计算, 最后再把结果返回给客户端约定方案一:1.客户端发送一个形如"1+1"的字符串;2.这个字符串中有两个操作数, 都是整形;3.两个数字之间会有一个字符是运算符,运算符只能是 +;4.数字和运算符之间没有空格;约定方案二:1.定义结构体来表示我们需要交互的信息;2.发送数据时将这个结构体按照一个规则转换成字符串,接收到数据的时候再按照相同的规则把字符串转化回结构体;

2023-04-08 13:22:48 117

原创 【TCP网络程序】线程池版本的 TCP 服务器

在start()函数中,使用了线程池来处理多个客户端的连接请求。在一个无限循环中,服务器不断尝试从监听socket中accept新的连接,如果成功则创建一个Task任务(Task类的构造函数参数包括这个连接的socket描述符、客户端IP地址和端口号,以及处理该连接请求的回调函数)并将其提交给线程池进行处理。处理过程中会调用Task任务中保存的回调函数来处理客户端请求。如果accept失败,则记录错误信息并继续等待下一个连接请求。这段代码是一个 TCP 服务器的实现。

2023-04-06 13:04:28 86

原创 【TCP网络程序】简单的TCP服务器实现

start()函数是服务器的主要逻辑,其中使用了accept()函数等待客户端的连接请求,如果有新的连接请求到来,就创建一个子进程为其提供服务。子进程中调用service()函数来处理客户端请求,该函数中使用read()函数读取客户端发送过来的数据,并使用write()函数将其回传给客户端。如果客户端关闭了连接,子进程会退出并成为一个僵尸进程,父进程通过waitpid()函数来回收子进程资源。这段代码是一个简单的TCP服务器实现,可以监听指定的端口,接受客户端的连接请求,并为每个连接提供服务。

2023-04-06 12:44:14 211

原创 【简单的UDP网络程序】实现一个简单的英译汉的功能

在该代码中,Handler类型定义了handler的函数签名,使用了std::function模板,它支持函数指针、仿函数和lambda表达式等多种函数对象类型。UdpServer类提供了一个Start方法,它接受三个参数:ip、port和handler,分别表示服务器绑定的IP地址、端口号和请求处理函数。该段代码定义了一个UDP服务器类UdpServer,它包含了一个成员变量sock_,它是一个UdpSocket对象,用于管理UDP套接字的创建、绑定、发送和接收操作。

2023-04-05 22:25:25 63

原创 【负载均衡式在线OJ】负载均衡模块

实现了可以给我们提供负载均衡功能的主机machine(就是一个machine对应一个后端服务),你可以在一台机器上部署三个编译服务,那么就对应三个machine,你将来可以在100个机器上部署200个编译服务,每台机器两个,那么你就有200个machine,所以它是一个逻辑上的概念。然后,它提供的就是更新自己的负载,减少自己的负载,还有获取自己的负载接下来,我们的负载均衡器loadBlance做的就是:根据配置文件把所有我们曾经预配置的主机和端口搞进来,搞进来之后把他push到machines里面。

2023-03-28 22:30:01 386

原创 【负载均衡式在线OJ】实现编译,运行,测试等功能

这两个服务器之间采用网络套接字的方式实现互相通信,这样就可以将编译模块部署在服务器后端的多台机器上,而我们的OJ_server只有一台,这样我们的服务器OJ_server会负载均衡地去选择后端的编译服务,让我们能够以集群处理能力的方式去对外输出我们的在线OJ服务,所以我们这是一个完全可扩展的项目。聚焦在服务器当中,当用户将代码提交上来之后,把用户提交的代码在我们的服务器上面形成临时文件,并且进行编译和运行,得到运行结果;要清楚某个文件,就要先确定这个文件是否存在,之前写过判断文件是否存在的函数,直接用。

2023-03-24 22:08:27 258

原创 Button OnClick处添加脚本后 找不到自己写的方法

前言记录一个Unity 的Button事件出错,写好了脚本之后,并为物体增加了Button组件,在为其增加OnClick事件时,发现找不到脚本中所写的方法,如图所示:问题分析2.1 脚本问题排除经过检查,脚本并未出现编译错误,并且继承于MonoBehavior。2.2 脚本挂载问题经查阅资料,上述问题是通过直接挂载脚本到OnClick中导致的,OnClick中应该挂载含有脚本的GameObject物体,即可实现。操作如图所示:1、将脚本挂载于父物体上2、GameObject挂载于OnC

2023-03-20 21:25:07 896 1

原创 Linux:进程控制(退出码)

2.可以在vim里面查询手册 命令:!5. 下面的echo打印的是上面echo的退出码。$^ 代表的是右侧的依赖文件列表。3.$@代表的是左侧的目标文件。4.查询最近的返回码。

2023-03-17 09:58:43 120

原创 Linux:给进程打断点,查看进程状态

Makefile中加 -g 表示可调试。

2023-03-16 22:36:42 213

原创 Linux:创建子进程并获取子进程id和父进程id;getpid() getppid()

6.查看fork手册 man fork(如果创建成功,返回子进程id ,父进程0;如果创建失败,返回-1)7.make一下,生成myprocess运行文件,然后./myprocess。8.清除myprocess运行文件: make clean。5.vim myprocess.c 并且创建子进程。ppid:9101是bash,也就是命令行解释器。4.创建子进程 make fork。

2023-03-16 21:28:33 1203

原创 Linux中出现No manual entry for fork错误

man fork的时候报错:即可解决

2023-03-16 20:23:14 321 1

原创 【Linux】进程概念相关指令,查看进程,杀掉进程

查看进程,杀掉进程

2023-03-16 19:58:10 74

原创 剑指offer 04.二维数组中的查找——报错(Vector数组越界)

在该测试用例中输入的是一个空vector,因此在matrix[0]时出现了数组越界错误。在此之前加上一个空判断就好,vector的判空函数为empty()

2023-03-14 21:47:55 217

原创 C++初阶 类与对象(3)

谈构造函数;初始化列表;explicit关键字;static成员;友元;内部类;匿名对象;拷贝对象时的一些编译器的优化

2023-02-20 23:15:04 69

原创 C++初阶:类与对象(2)

C++类与对象

2023-02-16 22:53:04 104

原创 数组704:二分查找 C++

二分查找

2023-02-14 22:59:16 41

原创 C++初阶:类和对象(1)

C++类和对象

2023-02-14 16:59:53 79

原创 C++初阶:this指针两大问题

this指针存放在那里?是否为空

2023-02-14 15:57:19 93

原创 C++初阶:缺省参数的使用

C++中缺省参数的使用:全缺省和半缺省

2023-02-14 14:41:20 61

原创 Unity插件分享——Adjust Pivot 修改物体的轴心

Adjust Pivot 修改物体的轴心

2022-12-15 22:50:37 4772 3

原创 双链表的增删查改(C语言版本)

双链表的增删查改(C语言版本)

2022-12-09 15:32:03 120

原创 动态通讯录实现

用C语言实现动态通讯录(可以扩展容量)

2022-11-26 21:51:06 289

原创 静态通讯录实现

用C语言来实现静态通讯录

2022-11-26 21:42:35 244

原创 模拟实现strncat

模拟实现strncat:将一段字符串加到另一段字符串后面

2022-11-26 09:54:23 108

原创 此文件中的某些Unicode字符未能保存在当前代码页中

此文件的某些Unicode字符未能保存到当前代码页中,是否以Unicode编码重新保存此文件,以便维护您的数据

2022-11-02 21:03:22 3007 2

转载 【unity】error CS0246: The type or namespace name ‘xxx‘ could not be found

【unity】error CS0246: The type or namespace name ‘xxx‘ could not be found

2022-11-01 20:35:03 7320

原创 为什么scanf中 s2.name前面不用&

在scanf中对数组进行传参时,不需要取地址符号

2022-10-24 12:35:34 97

原创 将3Dmax的模型导入到unity中(带材质)

将3Dmax的模型导入到unity中(带材质)1.文件-导出-游戏导出器2.设置路径和文件名,然后导出 3.将导出的模型拉到Assets里面4.修改模型的材质要求5.然后就会得到以下这两个材质包 6.最后将模型拖上去即可...

2022-06-16 12:31:50 9608 2

原创 Overleaf中图片名不能居中的解决方法

解决方法1:看自己是否有居中命令: \centering解决方法2:若有居中命令依旧不能居中,看自己是否添加了caption的依赖包,可以在该文档的最上面找,如下图位置:可以看到,我只有graphicx的依赖包,所以在该处添加caption的依赖包:\usepackage{caption},如下图:...

2022-05-28 10:56:07 5399 1

原创 使用Latex编辑IEEE模板【插入图片】时出现“undefined control sequence”问题的解决方法

l.491 \includegraphics [width=8cm]{CNN}The control sequence at the end of the top lineof your error message was never \def'ed. If you havemisspelled it (e.g., `\hobx'), type `I' and the correctspelling (e.g., `I\hbox'). O.

2022-05-27 16:02:16 6661

原创 docker 命令之 exec 的理解与运用

exec 实际上要表达的是在一个运行状态下的容器里执行命令。(进到容器看一看)docker exec -it 容器 /bin/bash 这个命令行,其实就是通过 -it 的模式执行了一下/bin/bash

2022-05-13 22:01:09 865

原创 pycharm终端‘ps’改变不了的解决方法

步骤一:输入cmd步骤二:active xxxxxxx即可成功

2022-04-28 11:33:38 348 1

原创 JAVA中int用完了20亿怎么办?

Java中的Integer的最大值为2,147,483,647。如果你需要一个更大的数字,你必须改变为一个long。解决办法:把一个数转换为long

2022-04-25 21:00:39 534

原创 从linux进入jupyter

1.docker ps :查看现有容器2.docker attach 容器ID :进入自己的容器 chen-pycharm3.直接输入 jupyter notebook4.后台退出的时候ctrl+c,然后yes,同意退出即可

2022-04-10 21:29:55 1641

原创 IDEA提示Cannot resolve symbol ‘String‘解决

今天在IDEA中用Java开发spark程序时,提示Cannot resolve symbol 'String’错误:解决办法:1.进入project structure2.更改JDK路径改完之后有可能还会有另一个问题:java: 错误: 无效的源发行版:16需要把project language level改成SDK default:...

2022-03-23 11:30:50 1018

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除