- 博客(142)
- 资源 (6)
- 收藏
- 关注
原创 XShell 连接 vm虚拟机中的redhat Linux系统
最近在公司操作Linux,回家后自己想搞一个linux系统,于是就安装了一个虚拟机redhat,由于在虚拟机里操作Linux命令速度太慢,效率不是不高,操作不方便,就想把操作命令转移到win7的桌面来,自己也百度了一下,按照别人的教程来,但是发现中间总是遇到很多问题,都是和别人的教程不一致,后来摸索了半天终于把问题解决了;下面是我连接的步骤;我选择的是nat链接,因为nat链接是没有网络的情况
2015-01-16 23:29:20 4472 5
原创 Go语言基础 - 切片(slice)
一、定义:切片是一个拥有相同类型元素的可变长度的序列。二、切片的结构:type SliceHeader struct { Data uintptr //第一个是字符串指向的底层字节数组, Len int //第二个是字符串的字节的长度 Cap int//切片指向的内存空间的最大容量(对应元素的个数不是字节数)}三、声明方式:var name [] TT : 表切片元素类型,可以是整型、浮点型、布尔型、切片、map 、函数等。切片的..
2021-07-09 10:39:43 532 1
原创 Go语言基础 - 数组
目录数组:一、定义:二、数组初始化方式:三、数组的赋值:四、应用范围数组:一、定义:数组是一个由固定长度的特定类型元素组成的序列,一个数组可以由零个或多个元素组成。二、数组初始化方式:1、定义一个数组变量的最基本的方式,数组的长度明确指定,数组中的 每个元素都以零值初始化。var a [3]int // 定义一个长度为3的int类型数组, 元素全部为0。2、定义数组,可以在定义的时候顺序指定全部元素的初始化值,数组的长 度根据初始化元素的数目自.
2021-07-08 15:51:48 391
转载 Linux 压缩解压命令
.tar解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)———————————————.gz解压1:gunzip FileName.gz解压2:gzip -d FileName.gz压缩:gzip FileName.tar.gz 和 .tgz解压:tar zxvf FileName.tar.gz压缩:tar zcvf FileName.tar.gz DirName——————————————.
2021-04-19 16:50:04 283
原创 网易游戏-Java资深岗位面试题(上海张江开发区)
前一段时间,一个朋友入职了网易游戏,资深开发岗位,很高兴他能把面筋写出来给我,我分享给网友,希望能帮助。这里就直接分享一二轮技术面试遇到的问题了汇总一下写在下面,hr面就不写了,hr面就是聊人生,谈价值观,为什么离职等等问题。1、聊项目,架构,为什么这么设计,有哪些不足之处,然后根据架构设计提出一些疑问,问你如何解决?2、聊游戏开发,你开发过哪些功能,找几个印象深刻的功能模块拿出来说说,然后针对你说的游戏模块功能,再分别提问,比如战斗,他问百分比和绝对值如何表示成相同buffer效果等等。(
2021-03-31 20:30:24 388
原创 String类分析(JDK1.8)
String类分析(JDK1.8)1、源码String 对象是对 char 数组进行了封装实现的对象, 主要有 2 个成员变量: char 数组, hash 值。2、String对象的不可变性String类被final关键字修饰了,变量char 数组也是final修饰了。不可继承修改。3、优点保证 String 对象的安全性。假设 String 对象是可变的,那么 String 对象将可能被恶意修改。b、保证 hash 属性值不会频繁变更,确保了唯一性, 使得类...
2021-02-18 17:15:21 441 1
原创 一、C++中的引用
一、定义:引用:所谓“引用”就是将一个新标识符和一块已经存在的存储区域相关联。因此,使用引用时没有分配新的存储区域,它本身并不是新的数据类型。二、使用引用需要注意的以下几点:可以通过被引用的对象来修改引用对象,不能有空引用。 在程序中必须确保一个引用和一个正确的存储区域关联。 引用通常用于函数的参数表中或者作为函数的返回值。 引用实际上实际上就是变量的别名,使用引用就如同使用变量一样。 不能直接声明对数组的引用,也不能申明引用的引用。eg: int& &r=x;(错误的)
2021-01-30 17:30:41 398
原创 python导入不同级目录中的模块
python导入同级别模块很方便:import xxx 要导入下级目录页挺方便:需要在下级目录中写一个__init__.py文件 from dirname import xxx 要导入上级目录,可以使用sys.path:首先sys.path的作用是:当使用import语句导入模块时,解释器会搜索当前模块所在目录以及sys.path指定的路径去找需要import的模块 所以改变思路,直接把上级目录加到sys.path里:sys.path.append('../') f...
2020-07-15 11:59:01 549
原创 Python3 pycharm 如何将写好的程序打包成可执行文件
1、打开pycharm idea ,按快捷键(Alt + F12)打开teminal窗口; 2、安装模块pyinstaller3、确定安装成功之后,在终端中输入“pyinstaller -F -w 文件名”,回车后开始打包文件-F 是用于将所有的支持文件全部都打包在一起,不显示其他的依赖文件(如果没有这个属性,你会发现所有生成的、所需支持的依赖文件会全部在文件夹下)...
2020-04-11 10:54:45 6692 1
原创 shell编程基础-条件判断
shell编程基础-条件判断一、文件常用的类型-d 文件: 判断该文件是否存在,并且是否为目录文件-e 文件: 判断该文件是否存在-f 文件: 判断该文件是否存在,并且是普通文件二、两种判断方式test -e test.txtecho $?等于[ -e test.txt ]判断一个文件是否是目录[ -d /root ] && echo "yes" || ...
2020-03-03 15:55:33 340
原创 shell编程基础-字符截取(sed)
sed:主要用来将数据进行选取,替换,删除,新增的轻量级流编辑器。sed [选项] '[动作]' 文件名[选项]: -n: 一般sed命令会把所有的数据都输出到屏幕,如果加入此选择,则把经过sed命令处理的行输出到屏幕; -e: 允许对输入数据应用多条sed命令编辑; -i: 用sed的修改结果直接修改读取数据的文件,而不是由屏幕输出; -f :直接将 s...
2020-03-03 13:56:42 514
原创 shell编程基础-字符截取(awk)
shell编程基础-字符截取awk '{printf $2 "\t" $6 "\n"}' test.txt[root@localhost zhurong]# df -hFilesystem Size Used Avail Use% Mounted ondevtmpfs 475M 0 475M 0% /dev...
2020-03-03 13:17:15 353
原创 shell编程基础-字符截取(cut)
shell编程基础-字符截取1、cut字符提取命令cut [选项] 文件名选项:-f列号:提取第几列 (默认是tab分割列)-d分隔符:按照指定分割符分格列cut -f 2,4 test.txt 截取第2列数据cut -d ":" -f 2,4 test.txt 截取第2列数据---------------------------------------简单...
2020-03-03 13:16:36 625
原创 shell编程基础-字符截取(printf)
shell编程基础-字符截取1、printf字符提取命令 printf '输出类型输出格式' 输出内容(不是文件名),并不是会自动加入换行符,如果需要则需要自加; 输出类型: %ns:输出字符串。n 是数字,指代输出几个字符; %ni:输出整数。n 是数字,指代输出几个数字‘’ %m.nf: 输出浮点数。m 和 n 是数字,指代输出的整数位数和小数位数。如...
2020-03-03 13:16:02 406
原创 shell编程基础-正则表达式
shell 正则表达式:一、正则表达式和通配符区别: 正则表达式是用来匹配字符串,包含匹配; 通配符是匹配符合条件的文件名,完全匹配;二、正则表达式的使用* : 前一个字符匹配0次或任意多次;. : 匹配除了换行符外的任意一个字符;^ : 匹配行首. eg: ^hello 会匹配以hello开头的行;$ : 匹配行尾. eg: hello$ 会匹配以hell...
2020-03-03 13:14:53 196
原创 shell编程基础-预定义变量
预定义变量 $? 最后一次执行的命令的返回状态,如果这个变量值为0,证明上一个命令的正确执行,反之则为错误执行; $$ 当前进程的进程号(PID) $! 后台运行的最后一个进程号(PID) find /root -name hello.sh && 表示后台执行...
2020-03-03 13:13:15 233
原创 shell编程基础-位置参数
$0:获取当前执行shell脚本文件名,如果执行脚本包含路径,那么就包括脚本路径 $n:获取当前执行shell脚本的第n个参数值、n=1..9,当n为0时表示脚本文件名;如果n大于9,则用大括号括起来,例如${10},接的参数以空格隔开 $#:获取当前执行的shell脚本后面接的参数个数$*:获取当前shell脚本所有传参的参数,不加引号和$@相同;如果给$*加上双引号,例如:“...
2020-02-28 19:30:01 335
原创 shell编程基础-环境变量
一、用户自定义变量和环境变量有啥区别?1、用户自定义变量只会再当前的shell中生效。2、环境变量会再当前的shell和这个shell的所有的子shell当中生效。3、如果把环境变量写入相应的配置文件,那么这个环境就会在所有的shell中生效。二、环境变量定义与使用1、设置环境变量 export 变量名=变量值 export age=182、查询环境变量 en...
2020-02-28 19:27:57 251
原创 shell编程基础-变量
shell编程基础-变量一、变量的定义1、变量的名称可以由字母,数字和下划线组成,但是不能以数字开头。例如:01abc2、在Bash中变量的默认类型都是字符串,如果需要进行数值运算,则必须指定变量类型为数值类型;3、变量用等号连接值,等号左右两侧不能有空格;4、变量的值如果是空格,需要使用单引号或双引号包括;5、在变量的值中,可以使用"\"转义符6、变量值可以叠加,不过变量需要$变量...
2020-02-27 11:26:28 233
原创 shell 基本功能
chmod 755 test.sh //设置可执行权限cat -A test.sh 包含隐藏文件别名:alias 别名 = “原命令”alias rm='rm -i'alias cp='cp -i'alias mv='mv -i'永久生效,设置在/root/.bashrc 文件种unalias 别名 : 删除别名ctrl + U : 删除或这剪切光标之前的字符ctrl ...
2020-02-27 10:07:19 550
原创 Linux 常用的快捷ctrl命令
1、tab //命令或路径等的补全键,linux用的最多的一个快捷键2、ctrl+a //光标迅速回到行首3、ctrl+e //光标迅速回到行尾4、ctrl+f //光标向右移动一个字符5、ctrl+b //光标向左移动一个字符6、ctrl+insert //复制命令行内容(mac系统不能使用)7、shift+insert //粘贴命令行内容(mac系统不能使用)8、c...
2020-02-13 21:20:47 3107
原创 echo -e 详解
echo在php中是输入那么在linux中是不是也是输入呢,当然echo在linux也是输入不过它的用法比php强大多了可以带参数及一些东西,下面我们来看一篇关于linux echo命令介绍及-n、-e参数详解吧,具体如下所示。echo命令用于在shell中打印shell变量的值,或者直接输出指定的字符串。linux的echo命令,在shell编程中极为常用, 在终端下打印变量value的时候...
2020-02-13 20:30:10 1030
原创 【Netty专题】源码剖析netty核心基础ByteBuf
在面试的时候,当面试问到netty的时候问到:你知道jdk nio中的ByteBuffer与netty中的ByteBuf有什么区别吗?来看看面试者的基础掌握的如何!你能准确回到出来个所以然吗? 说到jdk我先说说我身边使用jdk nio的情况; 我现在公司就有个游戏项目是jdk nio2一行一行实现的通讯架构,一直在线上运营,目前该架构单服承载最高的时候达到300...
2019-12-23 21:02:17 452
原创 Vue组件开源汇总精选
http://vue.awesometiny.com/https://blog.csdn.net/badaaasss/article/details/86129393
2019-11-21 16:28:09 318
原创 SpringBoot/Cloud重要的学习资源源码总结
https://gitee.com/farsunset/cim http://farsunset.com/lvxinhttps://gitee.com/zhoubochina/WePushCIM是基于mina或者netty框架下的推送系统,我们平常使用第三方的推送SDK,如极光推送,百度推送,小米推送,以及腾讯信鸽等来支撑自己的移动端的业务,或许有一些用户自己实现即时通讯系统的需求,那么C...
2019-11-13 18:31:29 460
原创 三、Spring Boot 2如何解决项目启动时初始化资源
springboot 启动的时候,系统总是有一些资源需要自定义去启动初始化,这些是如何实现的呢?接口CommandLineRunner,CommandLineRunner接口的Component会在所有Spring Beans都初始化之后,SpringApplication.run()之前执行,非常适合在应用程序启动之初进行一些数据初始化的工作。如果我们在启动容器的时候需要初始...
2019-11-13 18:21:42 315
原创 二、SpringBoot常用注解详解-(1)
Java常用注解:@Configuration 标注该类为配置类@ImportResource 注入第三方资源,xml等@CommponentScan ApplicationContext容器扫描哪些范围@Bean 标注实体类为bean,返回可以存在bean容器中(用@Bean标注方法等价于XML中配置的bean。)@ConfigurationProperties 配置属性绑...
2019-11-12 20:20:55 226
转载 Spring Boot引起的“堆外内存泄漏”排查及经验总结
背景为了更好地实现对项目的管理,我们将组内一个项目迁移到MDP框架(基于Spring Boot),随后我们就发现系统会频繁报出Swap区域使用量过高的异常。笔者被叫去帮忙查看原因,发现配置了4G堆内内存,但是实际使用的物理内存竟然高达7G,确实不正常。JVM参数配置是“-XX:MetaspaceSize=256M -XX:MaxMetaspaceSize=256M -XX:+AlwaysPre...
2019-11-05 10:29:20 431
转载 三、nginx服务器access_log日志分析及配置详解
nginx的log日志分为access log 和 error log其中access log 记录了哪些用户,哪些页面以及用户浏览器、ip和其他的访问信息error log 则是记录服务器错误日志错误日志的形式如下:从上面我们可以看出几部分信息:1.客户端(用户)IP地址。如:上例中的 201.158.69.1162.访问时间。如:上例中的 [03/Jan/20...
2019-10-30 16:12:08 825
原创 二、nginx 安装遇到的问题:./configure: error: the HTTP rewrite module requires the PCRE library.
yum -y install pcre-devel openssl openssl-devel问题解决:
2019-10-30 14:53:33 1068
原创 解决虚拟机(CentOS-7)连接不上网络的问题(Couldn't resolve host 'mirrorlist.centos.org)
1、修改dns配置文件: 打开文件/etc/resolv.conf在其中添加: nameserver 8.8.8.8 nameserver 8.8.4.4 search localdomain 2、修改 /etc/sysconfig/network-scripts 目录下的对应文件, 用vi编辑器编辑ifcfg-ens33:vi if...
2019-10-30 12:10:42 1601
转载 CentOS报错:Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&i
https://www.cnblogs.com/xixihuang/p/5404517.html
2019-10-23 15:53:57 1387
原创 Java7 和Java8 堆(Heap)比较不同之处
堆是JVM内存中最大的一块内存空间,该内存被所有线程共享,几乎所有对象和数组都被分配到了堆内存中。堆被划分为新生代和老年代,新生代又被进一步划分为Eden和Survivor区,最后Survivor由From Survivor和To Survivor组成。在Java6版本中,永久代在非堆内存区;到了Java7版本,永久代的静态变量和运行时常量池被合并到了堆中;而到了Java8,永久代被元空间取代...
2019-10-08 18:04:38 809
原创 二、python 函数 必须知道的知识点
一、函数篇1、闭包必须使用嵌套函数,一看到闭包我首先想到的是 JavaScript 里面的回调函数。闭包这里看似仅仅返回 了一个嵌套函数,但是需要注意的是,它其实连同嵌套函数的外部环境变量也一同保存返回回来了(例子 中的exponent 变量),这个环境变量是在调用其外部函数时设定的,这样一来,对于一些参数性,不常 改变的设定变量,我们可以通过这个形式来设定,这样返回的闭包函数仅需要关...
2019-09-04 09:50:44 212
原创 一、python 核心语法总结
一、字符串1、Python的字符串是不可变的(immutable)。改变一个字符串内部的字符是错误的,不允许的。2、字符串拼接方式: (1)、str1 += str2 # 表⽰str1 = str1 + str2 (2)、string.join(iterable),表示把每个元素都按照指定的格式连接起来。 (3)、string.strip(str),表示去掉首尾的st...
2019-09-04 09:49:00 548
原创 Linux cpu负载和cpu利用率的区别
在Linux系统中,我们一般使用uptime命令查看(w命令和top命令也行)。一、“load average” 含义:"load average",它的意思是"系统的平均负荷",里面有三个数字,我们可以从中判断系统负荷是大还是小。它们的意思分别是1分钟、5分钟、15分钟内系统的平均负荷。当CPU完全空闲的时候,平均负荷为0;当CPU工作量饱和的时候,平均负荷为1。那么很显然,"loa...
2019-09-02 19:23:58 1602
转载 游戏服务器生成全局唯一ID的几种方法
在服务器系统开发时,为了适应数据大并发的请求,我们往往需要对数据进行异步存储,特别是在做分布式系统时,这个时候就不能等待插入数据库返回了取自动id了,而是需要在插入数据库之前生成一个全局的唯一id,使用全局的唯一id,在游戏服务器中,全局唯一的id可以用于将来合服方便,不会出现键冲突。也可以将来在业务增长的情况下,实现分库分表,比如某一个用户的物品要放在同一个分片内,而这个分片段可能是根据用户id...
2019-08-28 09:28:43 1491
原创 java线上服务器jvm内存泄漏的一次踩坑(OutOfMemoryError)
前几天线上一台游戏服务器发生内存泄漏,cpu彪的很高,老板的脾气像cpu一样,是不是过来询问问题排查怎么样了。。。因为线上服务器启动的时候,加了- XX:+ HeapDumpOnOutOfMemoryError ,发现服务器项目目录下多一个hprof文件,这就是重要的线索,然后解析xxx.hprof这个文件,方法很多,(1)、可以使用JHAT,这是JDK默认提供的Java堆分析工具,jh...
2019-08-24 11:10:44 838
原创 10秒快速掌握ScheduledExecutorService 中的 scheduleWithFixedDelay() 和 scheduleFixedRate() 区别
scheduleWithFixedDelay: 不管线程任务的执行时间的,每次都要把任务执行完成后再延迟固定时间后再执行下一次。scheduleFixedRate: 是以固定频率来执行线程任务,固定频率的含义就是可能设定的固定时间不足以完成线程任务,但是它不管,达到设定的延迟时间了就要执行下一次了。...
2019-08-23 11:58:57 1533
Effective java 2rd & 3rd_enlish(2本)
2018-09-26
开发者职业发展漫谈
2018-09-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人