Unity3D

Unity3D是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。Unity类似于Director,Blender game engine, Virtools 或 Torque Game Builder等利用交互的图型化开发环境为首要方式的软件。其编辑器运行在Windows 和Mac OS X下,可发布游戏至Windows、Mac、Wii、iPhone、WebGL(需要HTML5)、Windows phone 8和Android平台。也可以利用Unity web player插件发布网页游戏,支持Mac和Windows的网页浏览。它的网页播放器也被Mac 所支持。 外文名 unity3d 分    类 游戏引擎、游戏开发工具 开发公司 Unity Technologies 支持的维度 3D,2D 编程语言 C#(JS以及Boo已被放弃支持)   from:https://baike.baidu.com/item/Unity3D

龙生   31 Mar 2019
View Details

转【Linux】CentOS7 常用命令集合

CentOS7 常用命令集合 这两天一直在对CentOS 7.2进行初体验,各种学习命令肿么用,不过其实大多和DOS是一样的,只是命令的表达上可能有点儿不一样,毕竟这些都不是一家出来的嘛~ 废话不多说,直接上命令和解析! 常用命令 文件与目录操作 命令 解析 cd /home 进入 ‘/home’ 目录 cd .. 返回上一级目录 cd ../.. 返回上两级目录 cd – 返回上次所在目录 cp file1 file2 将file1复制为file2 cp -a dir1 dir2 复制一个目录 cp -a /tmp/dir1 . 复制一个目录到当前工作目录(.代表当前目录) ls 查看目录中的文件 ls -a 显示隐藏文件 ls -l 显示详细信息 ls -lrt 按时间显示文件(l表示详细列表,r表示反向排序,t表示按时间排序) pwd 显示工作路径 mkdir dir1 创建 ‘dir1’ 目录 mkdir dir1 dir2 同时创建两个目录 mkdir -p /tmp/dir1/dir2 创建一个目录树 mv dir1 dir2 移动/重命名一个目录 rm -f file1 删除 ‘file1’ rm -rf dir1 删除 ‘dir1’ 目录及其子目录内容 查看文件内容 命令 解析 cat file1 从第一个字节开始正向查看文件的内容 head -2 file1 查看一个文件的前两行 […]

龙生   29 Mar 2019
View Details

当安装、卸载件包时,出现依赖问题 error: Failed dependencies解决办法

error: Failed dependencies:…… 依赖关系非常复杂,当你试图先安装任何一个包时都会出现这样的依赖关系错误,这时候你就应该强制安装了,我认为只要你把服务或软件需要的包都装上,强制安装也不会出问题的,不会有什么影响。 非常简单,只要加上一个--force (强制) 和--nodeps(不查找依赖关系)就可以了 如:rpm -vih httpd-2.2.3-6.el5.i386.rpm --force --nodeps 卸载时就不用--force了,只要加入--nodeps就ok了   from:https://www.cnblogs.com/lic1005/p/8023550.html

龙生   29 Mar 2019
View Details

LinuxRPM包安装

转载注明出处:原文地址 ## LinuxRPM包安装 二进制包(RPM包、系统默认包) RPM安装 rpm -ivh 包全名(查询依赖网址:http://www.rpmfind.net) -i(install):安装 -v(verbose):显示详细信息 -h(hash):显示进度 --nodeps:不检测依赖性 RPM包升级 rpm -Uvh 包全名(可替代安装) -U(upgrade):升级 RPM包卸载 rpm -e 包名(只能跟包名,不能跟包全名,可在任何目录执行) -e(erase):卸载 --nodeps:不检查依赖性 RPM包查询 rpm -q 包名:查询包是否安装 rpm -qa:查询所有已安装的RPM包 rpm -qa | grep httpd:查询匹配 rpm -qi 包名 i(information):查询软件信息 p(package):查询未安装包信息(包全名) rpm -ql 包名:查询包中文件安装位置 -l -p rpm -qf 系统文件名:查询系统文件属于哪个RPM包 -f(file) :查询系统文件属于哪个软件包 RPM包校验 rpm -V(verify):校验RPM包是否被改变 rpm2cpio 包全名 | cpio -idv./文件绝对路径 -rpm2cpio:将rpm包转换为cpio格式 cpio:创建软件档案文件和从档案文件中提取文件 from:https://www.cnblogs.com/tswhq/p/7868314.html

龙生   29 Mar 2019
View Details

maxscale

一.maxscale简介 1.MaxScale是maridb开发的一个mysql数据中间件,其配置简单,能够实现读写分离,并且可以根据主从状态实现写库的自动切换。 2.官网: https://mariadb.com/kb/en/mariadb-enterprise/mariadb-maxscale-20/ 二.安装 1.安装可以通过rpm安装 2.可以直接下载文件放入指定目录,本次采用第二种方法 1 2 3 4 5 #wget https://downloads.mariadb.com/MaxScale/2.0.2/centos/5Server/x86_64/maxscale-2.0.2.centos.5.tar.gz #tar zxvf maxscale-2.0.2.centos.5.tar.gz #mkdir /usr/local/maxscale #mv ./maxscale-2.0.2/* /usr/local/maxscale/ #cp /usr/local/maxscale/etc/maxscale.cnf.template /etc/maxscale.cnf   修改启动脚本,使其可以提供service服务 1 2 #cp /usr/local/maxscale/share/maxscale/maxscale /etc/init.d/maxscale #vi /etc/init.d/maxscale 将脚本中的///bin替换为/usr/local/maxscale/bin/maxscale 这将可以使用 service maxscale start|stop|restart启动停止或重启maxscale 三.账户配置 1.在主从库上授权两个账户 a.监视账户 1 2 create user maxscale_monitor@’192.168.1.%' identified by "123456"; grant replication slave, replication client on *.* to maxscale_monitor@’192.168.1.%';   b.路由账户

四.读写分离配置 0.vi /etc/maxscale.cnf 基本配置 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 […]

龙生   29 Mar 2019
View Details

使用cloudflare加速你的网站隐藏你的网站IP

前言 cloudflare 是一家国外的 CDN 加速服务商,还是很有名气的。提供免费和付费的加速和网站保护服务。以前推荐过的百度云加速的国外节点就是和 cloudflare 合作使用的 cloudflare 的节点。 cloudflare 提供了不同类型的套餐,即使是免费用户,cloudflare 提供的功能也是很全面的。 对于访客来自于国外的网站很不错;对于访客来自于国内的网站加速效果有限,有些甚至会变慢,不过其安全防护功能也很不错。 添加网站 官网: www.cloudflare.com 使用邮箱注册,注册完后自动进入添加网站界面。 添加网站分为四步:添加网站域名、添加DNS记录、选择方案、更新域名服务器。 Paste_Image.png 1.添加网站 填入自己的主域名(不带 www 的),“Scan DNS Records”。 2.添加DNS记录 添加完成后会自动扫描 DNS 记录,等待完成,“Continue”。 下面会列出所有扫描到的 DNS 记录。黄色云朵表示该解析通过 CDN 访问,灰色云朵表示不通过 CDN 访问,点击云朵可以切换状态。 这里建议全部调为黄色云朵走 CDN 访问,隐藏网站真实 IP 地址。全站通过 CDN 访问可以有效防止网站真实IP泄漏,保护原站安全。 记录简单的话可以直接按默认条目;如果没有扫描出来原记录或要手动添加,建议至少添加 @ 和 www 两条指向原网站 IP 的 A 记录,TTL 默认。 Paste_Image.png 3.选择方案 选择适合自己的方案,一般小站博客免费方案就够了。当然,有更高需求的可按需选择付费方案。 Paste_Image.png 4.更新域名服务器 右侧是新的域名服务器。进入域名管理面板,更改域名服务器为新的。 Paste_Image.png 域名服务器更改成功后会收到邮件提示。“Continue”,完成。 Paste_Image.png from:https://www.jianshu.com/p/95a8f8e28649 最后成功以后,你 ping 你的域名 则发现其返回的IP地址已经不是真实IP了!例如:

  摘录自:http://www.freebuf.com/articles/web/41533.html 大部分通过CloudFlare保护的网站都有一个direct-xxx(xxx对应网站域名)的子站,通过这个子站我们可以获得该网站的真是IP。例如这里我随便找个网站,我们手工测试一下: 我们不做DDOS,没必要去较真网站的真实IP是什么,但如果渗透过程中需要从Web入手,而暂时又找不到可利用的漏洞,需要通过其他弱智的方式来进行入侵,如各种C段的渗透等,那样真实的网站IP就显得比较重要了。OK,先ping一下,看看, 141.101.122.201,美国。 试试刚才说的那个方法 蛋疼了,被CloudFlare隐藏的那是相当的深了,这果然是特殊照顾的客户啊。这里就不得不祭出神站了,提到一个比较叼的网站,www.crimeflare.com,网站有个DomainSearchBox,可以对CloudFlare客户网站进行真实IP查询。这个估计是哪个哥们跟CloudFlare网站过不去建立的吧。 果断发现真实IP,147开头,香港大学的,具体地址就不透露了,免得顺丰快递上门服务。如何验证真实性呢,最简单的办法就是修改本地的Host文件,真实的IP对应与之对应的域名即可。但是验证了一下,发现不对,这只是曾经用过的一台服务器IP地址,应该是这鸟网站扛不住的时候CF帮忙搬家了,这里只能呵呵一下。看了下C段,全是香港大学的机器,没啥兴趣,搞来意义不大,就不浪费时间了。然后各种抓包分析,后来还是没突破,最终拿到了个CDN的小工具,类似于核总写的CDN终结者一样吧(某大牛,具体名字就不方便透露了),配和工具倒腾了会,竟然还真让我找到了一个在美国的IP地址(54.xxx.xxx.xx),查一下地址看看。 验证后果然为真实服务器,果然是AWS地址上,也验证了之前所有的想法,原来躲在了在亚马逊云上面,又是用的EC2产品,对ec2不太了解,注册了个aws看了看,对于EC2这种产品没有0Day是基本直接渗透没希望的。   from: https://www.cnblogs.com/bonelee/p/8670660.html

龙生   27 Mar 2019
View Details

nginx 优化(突破十万并发)

一般来说nginx 配置文件中对优化比较有作用的为以下几项: worker_processes 8; nginx 进程数,建议按照cpu 数目来指定,一般为它的倍数。 worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000; 为每个进程分配cpu,上例中将8 个进程分配到8 个cpu,当然可以写多个,或者将一 个进程分配到多个cpu。 worker_rlimit_nofile 102400; 这个指令是指当一个nginx 进程打开的最多文件描述符数目,理论值应该是最多打开文 件数(ulimit -n)与nginx 进程数相除,但是nginx 分配请求并不是那么均匀,所以最好与ulimit -n 的值保持一致。 use epoll; 使用epoll 的I/O 模型 worker_connections 102400; 每个进程允许的最多连接数, 理论上每台nginx 服务器的最大连接数为worker_processes*worker_connections。 keepalive_timeout 60; keepalive 超时时间。 client_header_buffer_size 4k; 客户端请求头部的缓冲区大小,这个可以根据你的系统分页大小来设置,一般一个请求 头的大小不会超过1k,不过由于一般系统分页都要大于1k,所以这里设置为分页大小。分页大小可以用命令getconf PAGESIZE 取得。 open_file_cache max=102400 inactive=20s; 这个将为打开文件指定缓存,默认是没有启用的,max 指定缓存数量,建议和打开文件数一致,inactive 是指经过多长时间文件没被请求后删除缓存。 open_file_cache_valid 30s; 这个是指多长时间检查一次缓存的有效信息。 open_file_cache_min_uses 1; open_file_cache 指令中的inactive 参数时间内文件的最少使用次数,如果超过这个数字,文件描述符一直是在缓存中打开的,如上例,如果有一个文件在inactive 时间内一次没被使用,它将被移除。 关于内核参数的优化: net.ipv4.tcp_max_tw_buckets = 6000 timewait 的数量,默认是180000。 net.ipv4.ip_local_port_range = 1024 65000 允许系统打开的端口范围。 net.ipv4.tcp_tw_recycle = 1 启用timewait 快速回收。 net.ipv4.tcp_tw_reuse = 1 开启重用。允许将TIME-WAIT sockets 重新用于新的TCP 连接。 […]

龙生   27 Mar 2019
View Details

PHP函数内访问全局变量

$stringVarGlo="global variant";//全局变量   textGlobalVariant1(); //方法一使用$GLOBALS["全局变量名"] echo $stringVarGlo,"<br/>";   textGlobalVariant2();  //方法二使用global 变量名声明引入; echo $stringVarGlo,"<br/>";   function textGlobalVariant1(){ $varGlob="textGlobalVariant1"; $GLOBALS["stringVarGlo"].=$varGlob;           //使用$GLOBALS["全局变量名"] }   function textGlobalVariant2(){ global    $stringVarGlo; //使用global 变量名声明引入; $varGlob="textGlobalVariant2"; $stringVarGlo.=$varGlob; }   输出 global varianttextGlobalVariant1 global varianttextGlobalVariant1textGlobalVariant2 ——————— 作者:岁月绵长 来源:CSDN 原文:https://blog.csdn.net/s1e1s/article/details/46833307 版权声明:本文为博主原创文章,转载请附上博文链接!

龙生   24 Mar 2019
View Details

RabbitMQ消息持久化

目录 一、前言 二、队列持久化   2.1 查看存在的队列和消息数量   2.2 持久化队列 三、消息持久化 四、总结 一、前言 如果我们希望即使在RabbitMQ服务重启的情况下,也不会丢失消息,我们可以将Queue与Message都设置为可持久化的(durable),这样可以保证绝大部分情况下我们的RabbitMQ消息不会丢失。当然还是会有一些小概率事件会导致消息丢失。 二、队列持久化   2.1 查看存在的队列和消息数量 在windows环境下,在rabbitmq的安装目录/sbin下,通过rabbitmqctl.bat list_queues查看  这边启动了两个producer,分别生成两个队列hello 和 hello1,并且他们都有一个消息存在 重启rabbitmq,模拟故障 可以看到重启后两个队列都消失了   2.2 持久化队列 我们就hello队列持久化 在声明队列名称时,持久化队列,生产端和消费端都要 1 channel.queue_declare(queue=’hello', durable=True) 我们重复上面的操作,但是给hello队列做持久化,而hello1不做,并重启rabbitmq 可以看到重启后,hello队列还在,hello1队列消失了,但是原本hello中的一条消息也没有保存下来。所以在这边我们仅仅做到了消息队列的持久化,还没有做消息持久化。 三、消息持久化 我们刚才实现了在rabbitmq崩溃的情况下,就队列本身保存下来,重启后队列还在。接下来我们要将消息也保存下来,即消息的持久化 1 2 3 4 5 6 7 8 9 channel.basic_publish(exchange=",                       routing_key=’hello',                       body=’hello',                       properties=pika.BasicProperties(                           delivery_mode=2,  # make message persistent                       )) # 增加properties,这个properties 就是消费端 callback函数中的properties # delivery_mode = 2  持久化消息 生产端生成一个消息,并重启rabbitmq 可以看到,经过队列和消息持久化后的hello, 在重启的情况下,队列和消息都存在,没有消失。 消费端再重启后也能正常接收 四、总结 队列持久化需要在声明队列时添加参数 durable=True,这样在rabbitmq崩溃时也能保存队列 仅仅使用durable=True ,只能持久化队列,不能持久化消息 消息持久化需要在消息生成时,添加参数 properties=pika.BasicProperties(delivery_mode=2)   from: https://www.cnblogs.com/bigberg/p/8195622.html#_label3

龙生   24 Mar 2019
View Details
1 154 155 156 432