• 公司生产环境网络安全升级过程

    缘由随着公司研发人员越来越多,为了安全控制要对服务器访问进行控制。为了让线上服务器更安全,所以要进行技术改造。如下图是以前的架构图图。技术人员主要通过SSH到堡垒机在通过堡垒机去链接其他服务器或者数据。此时堡垒机是要暴露一个公网SSH端口在外面的,这样不太安全。所以想到了用VPN解决改变之后的架构图对比之后我们可以发现,SSH线路被VPN取代了,这样我们就可以把SSH的端口关闭掉,只使用VPN就可
  • OpenVPN实现客户端分流

    问题由于公司使用了OpenVPN来保证网络的安全,但是发现每一次连接上VPN之后整个网络都变成服务器的出口IP了,这时候网络就非常慢了,并且这样也不对,应该需要走OpenVPN的再走。这时候就需要配置分流了。配置在服务端和客户端改一个都可以,由于改服务端影响比较大,所以那就改客户端的配置客户端路由分流路由控制需要由三个参数进行定义:route-nopull如果在客户端配置文件中配route-nop
  • 大数据查询 ELK 之 ES集群搭建

    缘由前面我们讲解了ELK的搭建过程。最近在处理系统数据发现了一个问题,一个ES节点处理太慢了,基本上要20多个小时才能处理完。这样我们就只能增加ES节点,部署集群模式了。当前是这种单节点服务集群搭建目的要搭建成3节点的服务器,其中3个节点是主节点也是数据节点其实配置ES集群是比较方便了,大家主要几个参数就可以了,主要注意以下几个参数就好了#集群的名字cluster.name:app-data#节点
  • Gitea - 企业搭建私有git服务器

    缘由git目前已经是非常流行的版本管理工具了。当时我在安居客的时候就已经使用这个工具了。而代码私有化管理是正常的一个需求,因为代码也是公司的资产。这几年使用过好几个,最开始的是gitlab,我专门写过一篇文章:用GitLab搭建自己的私有GitHub。然后是gogs。目前我们使用的是gitea。Giteagitea是从gogs发展而来的,我个人使用过程发现感觉比gogs安装和使用都方便,还有是开源
  • NFS - CentOS实现服务器之间共享文件

    缘由前面不是写过一个文章局域网内网机器上网实操。基于这个情况,有时候需要某台机器的文件夹或者文件要被其他机器共享。假设服务器如下服务器名称操作系统IP描述服务器ACentos7.9192.168.1.10文件服务器服务器BCentos7.9192.168.1.11需要访问服务器A的文件技术方案技术方案肯定比较多,例如可以直接scp复制服务器A的需要文件到服务器B。还有一种方式可以共享挂载:NFSN
  • /lib64/libc.so.6 错误导致的系统崩溃

    缘由我们有个同事要安装一个软件,就用yum安装,然后就悲剧。安装完成之后发现无论执行任何命令都会报错,如下错误psgrep:relocationerror::/usr/lib64/libpthread.so.0:relocationerror:symbol__libc_dl_error_tsd,versionGLIBC_PRIVATEnotdefinedinfilelibc.so.6withlin
  • php 间歇性报 Segmentation fault

    缘由大概9月份有一个脚本总是无法正常执行完,后来手动执行总是会看到出现“Segmentationfault”错误。我就根据这个错误去搜索引擎查了下,大部分都说是内存错误,我以为是内存不够大,就修改了运行的内存。但是最后发现还是会出现这个错误。排查错误这种错误一般要生成core.dump文件方便分析,如何生成?如何分析?生成core.dump默认是不生成的,需要执行如下命令打开。如果再出现上面的错误
  • Dell服务器安装OMSA管理工具

    缘由最近购买了一批二手Dell服务器,由于一些原因远程控制卡没办法使用,所以只能安装OMSA管理工具OMSA介绍DELLOMSA的全称为DellOpenmanageServerAdministrator,它是戴尔公司基于自主研发力量开发的IT系统管理解决方案,通过与业内领先的系统管理解决方案供应商密切配合,在深入了解用户对系统管理需求的基础上,OMSA系统管理方案可以全面解决系统管理人员最关心的系
  • 【Selenium学习笔记】网页截图实践

    缘由我们有一个产品牵扯到核查数据,在核查数据过程中会发现有一些违规网站,这一些违规网站我们要进行截图保留证据。如果是人工截图就非常麻烦,需要截图之后上传到系统,增加了大家的工作量,我们就想着试着程序自动化截图解决方案由于我们爬虫都使用的pythonselenium调用的chrome无头浏览器,所以我们依然选择了selenium调用chrome进行截图。截图核心代码如下,非常简单###核心代码如下d
  • 局域网内网机器上网实操

    缘由最近我们接到一个客户项目,客户所有的东西必须部署在独立内网里面的,但是整个程序有一部分是需要访问外网的,可以理解为调用外部网址接口,所以我们就要出一个方案来解决这个问题。假如内网服务器列表如下服务器名称操作系统IP描述服务器ACentos7.9192.168.1.10程序服务器服务器BCentos7.9192.168.1.11程序服务器服务器CCentos7.9192.168.1.12这台机器
  • 时间同步ntpdate报错的其他解决方案

    缘由最近我们一台高防服务器,在同步服务器时间时报noserversuitableforsynchronizationfound,最后经查实是机房屏蔽了udp端口所致,因为ntpdate同步时间使用的是udp123端口。rdate解决方案既然ntp不行我们改用rdate完全可以解决因国内一些高防机房屏蔽UDP端口而造成的时间无法同步问题。同时rdate使用的端口是37安装yuminstallrdat
  • 乔布斯Jobs管理调度平台

    缘由由于公司系统相对来说还是挺多的,定时任务也非常多,一直使用crontab配置存在几个问题。这几个问题只要使用该方式应该都会深有感触。问题一管理维护问题:定时Job太多,不清楚总共有多个Job,不知道每个Job到底是谁写的主要功能是什么。如果Job部署在多台服务器那就更要人命了问题二调度监控问题:crontab在一定程度上解决了调度问题,但是调度不光光是运行状态。在实际工作中还会关注,什么时间运
  • CentOS7 搭建 多账号FTP

    ftp?还有人用?其实在没有出来跑以前也觉得FTP应该死绝了,在上海各个比较可以的互联网公司,听到研发用FTP不说都鄙视吧,至少很多人认为没技术追求。但是我不得不说,在研发人员眼里觉得很Low的工具,在非专业人员眼里。需求来源方是:在互联网公司都会有设计或者前端,有很多公司其实只做单页面的,根本不需要什么后端人员。让设计或者前端学习Git必要性不大,FTP又是一个交互非常有好的GUI工具服务,导致
  • CentOS7 搭建ELK日志分析系统过程

    ELK简介ELK是什么?elk是三个开源软件的缩写,分别是:Elasticsearch、Logstash、Kibana。由于Logstash客户端太占用资源,对服务器的要求比较高,后来FileBeat出现了,解决了资源问题,官方也推荐这个工具。Elasticsearch:实时全文搜索和分析引擎,提供搜集、分析、存储数据三大功能Logstash:日志收集,分析,过滤并转化到对应的存储库Kibana:
  • curl: (56) Recv failure: Connection reset by peer 分析解决过程

    悲催的事情今天下午2点多(时间发生故障的时间是14:14,反馈时间却是:14:25)收到运营推广部门同事告知,网站打不开了,这个烦呀,怎么会打不开了,由于以前的系统有问题,都重新写了,切换到新的系统上面了,打不开就直接报错了,报错页面如下分析过程找到错误日志出现错误不可怕,这一点我们必须第一时间明确,千万不要担心,担心解决不了任何问题。对我们最有帮助的就是各种业务日志。通过查阅日志得出如下的错误,
  • 【解决方案】Centos7 opencv-python缺少 libSM.so.6, libXrender.so.1, libXext.so.6

    缘起最近在网上看到一个非常厉害的项目:https://github.com/ouyanghuiyu/chineseocr_lite,可以进行图片OCR识别,并且识别率还可以,关注这个是为了风控系统中的网页图片识别做技术储备。大家可以去看看非常不错的一个项目问题在运行过程中遇到了几个,大致问题如下截图。总结起来就是去三个共享库,这三个共享库是opencv-python需要的:libSM.so.6、l
  • 【免费视频课程】从不知到全面了解HTTPS

    缘由为什么要录制关于HTTPS的一个小课程,本来我是准备给我们团队分享下关于HTTP请求过程的主题。最近关于数据安全的话题越来越多,2020也可以称之为数据治理年。所以计算要讲HTTP,那就把HTTPS一起讲了算了,不然可能PPT都凑不够30分钟哈哈。大纲HTTPS是什么HTTPS为什么安全如何申请HTTPS证书如何配置HTTPS证书HTTPS是什么解读HTTP请求流程HTTPS为什么安全如何申请
  • curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused

    缘由最近在录制从不知到全面了解HTTPS这个视频,在使用acme.sh申请ssl证书的时候,安装脚本出错,错误信息大致如下curl:(7)Failedtoconnecttoraw.githubusercontent.comport443:Connectionrefused解决方案绑定hosts的方式$vim/etc/hosts199.232.68.133raw.githubusercontent.
  • 号外!! Python Flask 从入门到精通 上线啦

    缘由在前面写过一个文章人生苦短,我用Python给大家简单介绍了一下Python能做什么。然后广告了下当时的新课程PythonFlask构建微信小程序订餐系统。该课程上线之后有些同学反馈没有详细讲解Flask的基础知识和课程改造的框架为什么这么来的。基于该原因,重新录制了一门新课程:PythonFlask从入门到精通。希望大家可以喜欢演示地址:http://movie.54php.cn大纲课程简介
  • CentOS7 安装和配置MySQL8全过程记录

    缘由最近由于工作调整,很多基础工作都要准备。对我们研发来讲,代码写完了还需要部署到生产环境。那就无法避免的要部署生产服务器的环境。由于软件一直会有更新迭代。这里我们就说下MySQL8.0在CentOS7安装的一个全过程配置源由于默认源已经不再有MySQL软件信息了,所以需要自己去官方下载并安装wgethttps://dev.mysql.com/get/mysql80-community-relea
  • 【实战】Docker入门实践二:Docker服务基本操作 和 测试Hello World

    操作环境操作系统:CentOS7.2内存:1GBCPU:2核Docker服务常用命令docker服务操作命令如下servicedockerstart#启动服务servicedockerstop#停止服务servicedockerrestart#重启服务servicedockerstatus#查看服务状态启动Docker服务docker是一个CS模型,需要先启动服务端,直接执行sudoservice
  • CentOS中service命令与/etc/init.d的关系以及centos7的变化

    缘由由于个人经常在ubuntu和centos系统中切换,习惯了以前的ubuntu中通过/etc/init.d/xxx进行软件服务控制。后来发现centos7中换了服务的控制方式:serviceservice关键字servicehttpdstart其实是启动了存放在/etc/init.d目录下的脚本。但是centos7的服务管理改规则了。CentOS7继承了RHEL7的新的特性,例如强大的syste
  • MacOS High Sierra 引起 VirtualBox Vagrant 同步慢

    问题最近把mac的操作系统升级到了最新版本发现了一个问题,通过共享文件夹的方式修改的文件,无法立即同步到虚拟机中,大概需要30秒才能同步到共享文件夹。操作环境如下虚拟机:Virtualbox虚拟机操作系统:Ubuntu16.04虚拟机管理工具:Vagrant物理机:MacHighSierra10.13.4现象截图正常截图修改文件之后的截图可以发现,当修改之后通过终端查看文件发现直接提示error了
  • 【实战】Docker 入门实战一:ubuntu 和 centos 安装Docker

    Docker是什么Docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源。Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似iPhone的app),更重要的是容器性能开销极低从这个解释我们不知道大家有没有想到一个优点类似的东西,没错就是
  • 【Composer】实战操作二:自己创建composer包并提交

    大纲创建自己的composer库提交到指定平台测试安装自己的库设置composer平台自动更新如何方便测试自己开发的库开始动手创建自己的composer库个人博客后台有一部分是关于统计的,通过UA获取浏览器,设备,操作系统。本人封装了一个库,放在github上,源码地址:https://github.com/apanly/browser-detector,任何一个文件夹只有有个composer.j
  • 【Composer】实战操作一:使用库

    前言前面我们简单介绍了composer的安装以及如何安装库本文目的主要实战讲解如何使用库,主要是PSR-0和PSR-4的区别,以及如何在代码中引用。关于PSR-0和PSR-4的具体区别可以参考博文PSR:php编码规范演示代码演示代码都在https://github.com/apanly/composer_helloworld中,有兴趣的可以clone实战内容引用资源phpoffice/phpex
  • 【ionic】Mac IOS下真机调试

    模拟调试不能保证真机一定没问题,所以真机调试是非常必要的一步IOS设备启用设备调试在IOS设备中(Iphone,Ipad)中开始web检测器设备->safari->高级->web检测器编译代码ionicbuildios调试通过命令直接启动或者通过xcode导入会自动运行APPionicrunios--device这时打开Safari的“开发”,就可以看到如下界面:
  • PSR : php编码规范

    诸王混战关于开发标准这块,可以说一直都是风格迥异,各家都有各家的玩法,民间更是个人玩个人的。目前我们国内比较出名的几个框架(Yii,Laravel)都已经支持Composer并且加入了PHP-FIG(php框架程序组)。其中Composer的自动加载就支持PHP-FIG指定的PSR-0和PSR-4规范来实现自动加载机制,并且Composer推荐使用PSR-4PHP-FIG这是一个自愿非正式的机构,
  • Composer : php依赖管理工具

    原始时代我记得在当时用php的时候还没有composer,只有个pear,但是不好用呀,还不如直接在互联网上到处复制代码了,更快更不容易出错,当时也没有github这么好的社区工具了总结如下代码混乱规范不统一没有后续统一更新等管理Composer侠应运而生composer直到如今已有5个年头了,也是直到今年才有了第一个稳定版本1.0,以前都是alpha版本了,其实composer的发展也和PHP-
  • 【No.1 Ionic】基础环境配置

    Node安装gitclonehttps://github.com/nodejs/nodecdnode./configuremakesudomakeinstallnode-vnpm-vnpm设置淘宝镜像npmconfigsetregistryhttps://registry.npm.taobao.orgnpmconfigsetdisturlhttps://npm.taobao.org/distIOS
  • MetaWeblog 同时管理51cto,csdn,sina,163,oschina,cnblogs等博客

    我们技术人一般都会有自己的一个博客,用于记录一些技术笔记,也期望自己的笔记文章可以让更多人知道。如何让更多人知道自己的博客?搜索引擎收录,用户通过关键词搜索可能会进入内容运营,但是一般技术人为了文章做运营的人应该没有几个通过大流量同类型网站导流量我是使用方法一和方法三,方法一就不说了,互联网人都知道了,但是小网站效果不会太好了。方法三就是充当复读机:复制和粘贴到其他技术网站“复制和粘贴到其他技术网
  • IOS 移除storyboard

    我是IOS新手,都说storyboard是个好东西,但是我搞了一会始终没有搞懂,并且我觉得学习一门语言,使用类似以前网页三剑客这种所见所得工具,不太利于学习,所以我就想着移除storyboard1:我们通过xcode新建的项目,默认会有个Main.storyboard,我们就是要干掉这个2:移除storyboard3:删除Main.storyboard之后,再启动app就和黑屏,这个时候就需要修改
  • IOS NSDate NSDateFormatter 导致相差8小时

    时间问题应该是所有编程语言都要处理的。详细学过php的同学知道,php中也会有相差8小时的问题,然而php可以非常方便的解决的,直接设置下就好了我最近在学习IOS的过程中,发现IOS的日期处理也是个大坑。记录下我遇到的问题我开始使用NSDate获取时间发现相差8小时,解决方法如下NSDate*date=[NSDatedate];NSTimeZone*zone=[NSTimeZonesystemTi
  • iOS开发工具-网络封包分析工具Charles

    简介Charles是在Mac下常用的截取网络封包的工具,在做iOS开发时,我们为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析。Charles通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析。Charles是收费软件,可以免费试用30天。试用期过后,未付费的用户仍然可以继续使用,但是每次使用时间不能超过30分钟,并且启动时将
  • 【Git 使用笔记】第三部分:多分支开发

    ###举例仓库仓库地址A:git@gitlab.54php.cn:guowei/demos.git仓库地址B:git@gitlab.54php.cn:infra/demos.git开发人员仓库C:git@gitlab.54php.cn:lurenjia/demos.git###多分支开发背景以demos为例子,主分支是仓库B,开发分支是仓库A,然后每个开发人员从仓库Aclone,每周会在仓库A切一
  • 大数据挑战与NoSQL数据库技术

    本书共分为三部分。理论篇重点介绍大数据时代下数据处理的基本理论及相关处理技术,并引入NoSQL数据库;系统篇主要介绍了各种类型NoSQL数据库的基本知识;应用篇对国内外几家知名公司在利用NoSQL数据库处理海量数据方面的实践做了阐述。本书对大数据时代面临的挑战,以及NoSQL数据库的基本知识做了清晰的阐述,有助于读者整理思路,了解需求,并更有针对性、有选择地深入学习相关知识。
  • Linux内核完全剖析

    本书对早期Linux内核(v0.12)全部代码文件进行了详细、全面的注释和说明,旨在帮助读者用较短的时间对Linux的工作机理获得全面而深刻的理解,为进一步学习和研究Linux打下坚实的基础。虽然选择的版本较低,但该内核已能够正常编译运行,并且其中已包括了Linux工作原理的精髓。书中首先以Linux源代码版本的变迁为主线,介绍了Linux的历史,同时着重说明了各个内核版本的主要区别和改进,给出了
  • iOS 编程

    《iOS编程(第三版)》全面细致地讲解CocoaTouch的基础知识,深入解读并剖析在开发iPhone及iPad应用时可能遇到的各种问题,并揭示如何高效地使用Objective-C和Xcode顺利完成iPhone及iPad应用开发之旅。主要内容有:学习Objective-C语言的细节以及面向对象程序设计理念。理解Xcode工程的结构和生命周期的各个阶段。了解Cocoa的关键概念,例如,类之间的联系
  • IOS UIView圆角,阴影,边框,渐增光泽

    圆角sampleView.layer.cornerRadius=2.5;//圓角的弧度sampleView.layer.masksToBounds=YES;阴影sampleView.layer.shadowColor=[[UIColorblackColor]CGColor];sampleView.layer.shadowOffset=CGSizeMake(3.0f,3.0f);//[水平偏移,垂直
  • iOS开发tableView去掉顶部上部空表区域

    tableview中的第一个cell里上部有空白区域,大概64像素在viewDidLoad中加入如下代码self.automaticallyAdjustsScrollViewInsets=NO;
  • 【ZBar】ios错误ignoring file xxx missing required architecture x86_64 in file

    解决方法:1、在Projecttarget里“Architectures”设置为:Standard(armv7,armv7s)或者Standard(armv7,arm64)2、设置”BuildActiveArchitectureOnly”为“NO”还有一篇文章说的很牛逼,但是还咩有看,http://blog.csdn.net/lanmanck/article/details/39055503