开源中国

我们不支持 IE 10 及以下版本浏览器

It appears you’re using an unsupported browser

为了获得更好的浏览体验,我们强烈建议您使用较新版本的 Chrome、 Firefox、 Safari 等,或者升级到最新版本的IE浏览器。 如果您使用的是 IE 11 或以上版本,请关闭“兼容性视图”。
博客专区 - 开源中国社区

精彩阅读

  • 最新推荐

  • 今日热门

  • 本周热门

  • 每日一博

  • 最新文章

致我们再也回不去的 Github ...

1、前言 相信大家都知道了,微软已确认要收购 GitHub 了,Github官方也在Github网站显眼位置给出了CEO的确认收购博客文章。具体多少钱收购的还不得而知,但是据知情人士透漏,GitHub 之所以放弃了原有的上市计划,而选择出售给微软,部分原因是因为他们对微软 CEO 萨提亚·纳德拉印象非常深刻。 ▲ Github官网上的庆祝页   ▲ 上图左一为萨蒂亚·纳德拉、中间是盖茨、右一为鲍尔默 嗯,这大概就是所谓的「确认过眼神」吧。 (本文同步发布于:http://www.52im.net/thread-1635-1-1.html) 2、微软在程序员心目中的形象并不佳 GitHub 被微软收购,网上一大堆程序员嘲讽,很多人可能会觉得微软的产品挺好的,纳闷为什么被嘲讽? 其实,在硅谷,嘲讽微软非常普遍,硅谷的码农门喜欢 Google、Facebook 这类开放、年轻的公司,而微软一直给人的感觉是封闭、守旧,自然不被硅谷的码农们待见。 3、实际上微软早已是开源最积极的贡献者之一 其实最近的 10 年,开源非常流行,GitHub 也是在这期间发展起来的,逐渐的成为程序员最喜欢的开源社区,众多科技顶尖公司也纷纷加入开源的怀抱,这几年微软看到形势后,说实话,也没以前那么封闭了,为开源界也做出了不少贡献。还记得 2017...
JackJiang- 发布于 2周前 阅读 765 评论 10 点赞 1

五月新增开源项目:“复刻” Win 95 到 iOS;Grails 框架作者携最新力作登场

五月份开源中国社区收录了相当多的重量级开源项目,如 Node 之父 Ryan Dahl 的 deno,deno 也被认为是下一代 Node;Grails 框架作者的最新力作,微服务应用框架 Micronaut;还有少见的用 Vue.js 构建跨平台原生桌面应用的开源项目 Vuido
编辑部的故事 发布于 2周前 阅读 3703 评论 2 点赞 2

6月25日至27日,为何全球开源大咖齐聚国家会议中心?LC3来啦!

广告
今年6月25日至27日, LinuxCon + ContainerCon + CloudOpen(LC3)将在北京国家会议中心召开。本次会议针对开源技术在人工智能和深度学习、区块链、云原生、虚拟服务器架构和微服务、新兴技术、基础实施和自动化、IoT和M2M、KVM、Linux系统、网络编排等10大前沿领域的应用,邀请了全球数百位业界大咖,用三天时间、超过200场分享,从市场、技术、产业甚至整个生态层面,将做全方位的探讨。
LinuxCon + ContainerCon + CloudOpen(LC3)

Lightning 组件内容多语言与自定义标签按规则使用

之前做的项目都是中文环境,页面上的文本与标签也都是直接在代码中写的汉字,去年开始做了A项目,要求是代码与系统配置中不能出现任何中文,因为需要推广其它国家,由于习惯问题,在开发时都用的中文,后面再去补,导致没有很好的规划,用自定义标签替换,获取字段的标签也是写到了控制类中,如下截图,如果一个组件中涉及到多个对象的多个字段, 在初始化时就需要写一大段的代码,而在另一个组件中同样重复的代码又出现一次 ![](http://p380uyjgu.bkt.clouddn.com/18-6-3/33102943.jpg) 关于自定义标签就更不用提了,每个人都新建一次,同样的意思的提示消息每个人都来一遍,导致混乱,同时,自定义标签是有数量限制的(5,000). 去年底在做B项目时,也需要支持多语言,鉴于上个项目的情况,计划在项目开始前就规范,但实际情况是在做完后再补(😒🙄),这次在新建自定义标签时,按类别先分类,目前暂时按如下截图,然后新建不同类别视图 ![](http://p380uyjgu.bkt.clouddn.com/18-6-3/61526766.jpg) 自定义标签暂时按这种方法使用,那对于字段的标签如何管理,为了跟页面控制逻辑分离,通过写一个Lightning组件,这个组件比较特殊没有任何的内容,只有一个初始方法,初始化方法调后台,获取指定对象的Label...
在山的那边 发布于 2周前 阅读 88

倒计时2周,第0届学生开源年会,与你不醉不会

还有2周的时间,第0届学生开源年会6月9-10日就要在重庆大学正式开始啦!一点也不觉得累,想要与你不醉不会! 学生开源年会 Students Open Source Conference,简称 SOSCON,是国内首个面向学生的开源技术大会。SOSCON 是一个纯社区非商业非盈利的开源大会,票价全部免费,并且对学生讲者进行补助。 大会旨在鼓励学生享受开源、了解开源、参与开源、贡献开源,每年在不同城市轮流举办, 从演讲者、组织者、志愿者到听众,绝大多数都为在校学生,包括中学生、大学生和研究生。 学生开源年会的主办方是开源工场,联合创始社区包括:重庆大学 CONTINUE、清华大学 TUNA 协会、中科院开源软体协会、中科大 LUG、西南大学开源协会、 重邮LUG、北邮互联网与开源社区等。 学生开源年会是一个面向学生的开源会议,从演讲者到工作人员到听众几乎全部为学生,享受开源乐趣,参与开源贡献。关于畅想未来这件事,我们学生更有感觉。期望通过这次会议,分享开源精神,拓展与会者的视野;开源是一种精神,每位与会者,都是拥有贡献精神、乐于为社会付出的种子。期望今天的学生能成长为明日的参天大树,传承开源贡献的精神,传承理想主义的情怀,共同为推动社会的进步而无私努力。 为了给远赴...
重庆大侠 发布于 3周前 阅读 1380 评论 7 点赞 1

Pyflow : 一个基于工作流的编程模型(Flow Based Programing) 工具

Flow Based Programing 是由J. Paul Rodker Morrison在很早以前提出的一种编程范式。 维基百科对FBP的定义如下: In computer programming, flow-based programming (FBP) is a programming paradigm that defines applications as networks of "black box" processes, which exchange data across predefined connections by message passing, where the connections are specified externally to the processes. These black box processes can be reconnected endlessly to form different applications without having to be changed internally. FBP is thus naturally component-oriented. 在github的这个https://github.com/samuell/awesome-fbp项目内列举了很多不同语言对该范式的实现以及一些资料,大家可以参考。 很多年前我用Python开发了一个基于流概念的数据处理工具。当时主要是想解决让不懂编程的数据工程师能够通过构建图形化的数据流来达到数据获取,变形和抽取的功能。这么多年过去了,我整理了一下代码,丰富了一下基本功能,构建了简单的运行UI,算是有个初步的雏型,看看能不能分享给社区做些贡献。 项目在这里: https://github.com/gangtao/pyflo...
naughty 发布于 3周前 阅读 488 评论 4

使用 Git-Analyze 玩转 Git

git-analyze 是一个基于 libgit2 的 git 工具集,包括 git-analyze,git-complete, git-rollback,以及 git-cheat 等
Force武装卫队 发布于 4周前 阅读 1451 评论 5 点赞 3

码云即将支持 Git v2 Protocol

Git v2 Protocol aka Git Wire Protocol
Force武装卫队 发布于 4周前 阅读 1421 评论 12 点赞 4

开源中国博客征文啦,是时候展现真正的技术了

开源中国官方博客征稿了。欢迎投稿,文章一旦被官方账号收录,我们会在网站首页等位置进行推荐。 投稿内容要求 互联网技术相关,包括但不限于开发语言、网络、数据库、架构、运维、前端、DevOps(DevXXX)、AI、区块链、存储、移动、安全、技术团队管理等内容。 文章不需要首发,可以是已经在开源中国博客或网上其它平台发布过的。 如果你是记录某一次解决了某一个问题(这在博客中占绝大比例),那么需要将问题的前因后果描述清楚,最直接的就是结合图文等方式将问题复现,同时完整地说明解决思路与最终成功的方案。 如果你是分析某一技术理论知识,请从定义、应用场景、实际案例、关键技术细节、观点等方面,对其进行较为全面地介绍。 如果你是以实际案例分享自己或者公司对诸如某一架构模型、通用技术、编程语言、运维工具的实践,那么请将事件相关背景、具体技术细节、演进过程、思考、应用效果等方面描述清楚。 其它未尽 case 具体情况具体分析,不虚的,文章投过来试试先,比如我们并不拒绝就某个热点事件对其进行的报导、深入解析。 投稿方式 以 Word 或者 Markdown 文档的形式将稿件投递到 oscbianji@oschina.cn 邮箱 重要说明 作者需要拥有所投文章的所有权,不能...
编辑部的故事 发布于 1个月前 阅读 1384 评论 9 点赞 3

Protocol buffers 快速入门(针对 Java 语言)

写在前面         在学习使用 protocol buffers 的时候一开始在网上找一些博客看,遇到的问题是很多博客写的并不清晰看了也是让人一头雾水,没法达到对 protocol buffers 快速上手使用的目的(完成一个 hello world)。然后通过官方文档学习后对 protocol buffers 有了大概的认识,也达到能够应用的程度。建议最好还是去看官网上的文档,描述的很详细。protocol buffers 官网(请科学上网)。   Protocol Buffers 是什么?         Protocol Buffers 简称 protobuf , 由 google 开源。是一中语言中立 , 平台中立 ,(不和特定的语言、操作系统绑定),对结构化数据进行序列化、反序列化的机制。类似于 XML , 比起 XML protobuf 的优点是 :数据占用空间小 , 传输速度快  ,使用起来简单 , 定义一次数据结构,生成指定语言的代码 (目前支持Java 、Python 、C++ 、Objective-C 、Go 、Ruby 、C# 、JavaScript 、PHP 、Dart )。 缺点是可读性不如 XML 。protobuf 不是好的面向对象的设计 , 不能发挥面向对象的特性 , 不应该通过继承向生成的类添加行为, 这会打破内部机制,无论如何都不是很好的面向对象的实践。   开始使用 brotobuf 1.     下载...
j4love 发布于 1个月前 阅读 397

大型分布式电商系统架构是如何从0开始演进的?

本文是学习大型分布式网站架构的技术总结。对架构一个高性能、高可用、可伸缩及可扩展的分布式网站进行了概要性描述,并给出一个架构参考。文中一部分为读书笔记,一部分是个人经验总结,对大型分布式网站架构有较好的参考价值。 一、大型分布式网站架构技术 1、大型网站的特点 用户多,分布广泛 大流量,高并发 海量数据,服务高可用 安全环境恶劣,易受网络攻击 功能多,变更快,频繁发布 从小到大,渐进发展 以用户为中心 免费服务,付费体验 2、大型网站架构目标 高性能:提供快速的访问体验。 高可用:网站服务一直可以正常访问。 可伸缩:通过硬件增加/减少,提高/降低处理能力。 安全性:提供网站安全访问和数据加密、安全存储等策略。 扩展性:方便地通过新增/移除方式,增加/减少新的功能/模块。 敏捷性:随需应变,快速响应;   3、大型网站架构模式 分层:一般可分为应用层、服务层、数据层、管理层与分析层; 分割:一般按照业务/模块/功能特点进行划分,比如应用层分为首页、用户中心。 分布式:将应用分开部署(比如多台物理机),通过远程调用协同工作。 集群:一个应用/模块/功能部署多份(如:多台物理机),通过负载均衡共同提供对外访问。 缓存:将数据...
编辑部的故事 发布于 1个月前 阅读 4438 评论 15 点赞 26

微信朋友圈千亿访问量背后的技术挑战和实践总结

1、前言 微信朋友圈包括图片和视频两套业务架构组成,朋友圈图片的特点是请求量大、消耗计算资源较多,视频则主要消耗带宽。 朋友圈的数据是永远存储的,而且随着业务的快速发展,存储容量、带宽和设备的消耗大量增加,尤其重大节日带来的使用量增长,更加剧了消耗,也给运维人员的保障带来了巨大压力。 在重在节假日节点,技术保障主要由三方面组成: 1)软件保障指通过程序、业务逻辑层面的优化和评估,减轻负载; 2)硬件保障主要指带宽、机器负载的评估和扩容; 3)柔性措施指的是通过业务调整,降低一些不重要特性的资源,来保障重点特性的正常运行。 学习交流: - 即时通讯开发交流3群:185926912[推荐] - 移动端IM开发入门文章:《新手入门一篇就够:从零开发移动端IM》 (本文同步发布于:http://www.52im.net/thread-1569-1-1.html) 2、相关文章 《微信朋友圈海量技术之道PPT [附件下载]》 《架构之道:3个程序员成就微信朋友圈日均10亿发布量[有视频]》 3、软件架构方面的保障 朋友圈整体情况如下图所示: 朋友圈的架构主要分为OC和IDC两种: IDC指的是数据中心,即数据最终落地存储的地方; OC指的是带外网的独立机房,SOC指规模较大的OC。 每个IDC都有一整套接...
JackJiang- 发布于 2个月前 阅读 462 点赞 3

Spring Boot 如何极简入门?

Spring Boot已成为当今最流行的微服务开发框架,本文是如何使用Spring Boot快速开始Web微服务开发的指南,我们将创建一个可运行的包含内嵌Web容器(默认使用的是Tomcat)的可运行jar包。 传统的Spring应用程序需要配置大量的XML文件才能运行,而使用Spring Boot只需极少的配置,就可以快速获得一个正常运行的Spring应用程序,而这些配置使用的都是注解的形式,不需要再配置XML。 与Go语言的应用不同,我们知道所有的Java Web应用都必须放在Servlet容器中(不是像Docker容器的那种容器),如Tomcat、Jetty等。Servlet容器被定位为托管Web应用程序的高可用组件,关于Servlet的教程请参考Servlet教程 | runoob.com。 使用Java构建微服务并发布到Kubernetes平台 Java作为多年的编程语言届的No.1(使用人数最多,最流行),使用它来构建微服务的人不计其数,Java的微服务框架Spring中的Spring Boot和Spring Cloud已成为当前最流行的微服务框架。 下面是Sping技术栈所包含的技术框架图。 当然,如果在Kubernetes中运行Java语言构建的微服务应用,我们不会使用上图中所有的技术,本节将主要讲解如何使用Spring Boot构建微服务应用。 下图是Spring Boot的一些知识点。 Spring Boot是...
编辑部的故事 发布于 2个月前 阅读 6688 评论 14 点赞 6

四月份新增开源项目:撩萌妹子必备软萌颜文字生成工具

开源中国的小婊贝们,五一去完了浪漫的土耳其,又去了东京和巴黎的你,是不是根本就无心上班。                                                   不要方,OSC的小哥哥小姐姐们总是爱你们的,一回来就给你准备了满满的福利,来收下这快溢出来的爱。                                                   4 月份,我们收录的开源项目有 200 有余。在这众多的项目里面,我们精心挑选了有价值的、有用的、优秀的、或者好玩的开源项目来和大家分享。当然,如果 OSCer 们有更多好玩的优秀的开源项目,也要不吝啬的推荐给我们。给你们一个投递开源软件的正确姿势 >>> https://www.oschina.net/question/2918182_2266982。 1.论静态网站的生成 VuePress 是一个基于 Vue 的轻量级静态网站生成器,以及为编写技术文档而优化的默认主题。 它是为了满足 Vue 自己的子项目文档的需求而创建的。 VuePress 享用 Vue + webpack 开发环境,在 markdown 中使用 Vue 组件,并通过 Vue 开发自定义主题。VuePress 为每一个由它生成的页面提供预加载的 html,不仅加载速度极佳,同时对 seo 非常友好。一旦页面被加载之后,Vue 就全面接管...
编辑部的故事 发布于 2个月前 阅读 3179 评论 5 点赞 3

Ubuntu 17.10 下安装和使用 TIM 之草尼妈

其实我是不喜欢用 Ubuntu 的,但是因为之前系统出错,开机总是失败卡在一个什么 hostname.service 的地方(大概是这个样子忘记了),可能只有几十分之一的概率能正常进到系统,没办法只能重装系统了 你可能要问为什么不用原来的系统而要来用“不bu喜xi欢guan”的 Ubuntu,我只想说我也是很无耐。原来系统可能最近和我有仇,不但原系统进不了,连安装程序都不能正常用,要么就是进去刚到语言选择就死机,要么就是快安装完了安装grub引导的时候它去挂载efi分区时挂错硬盘了挂载失败安装被中断,也真是有仇了,这安装程序还不能手动处理后恢复继续安装(像debian那样多好,我就喜欢出错后手动解决 了再继续安装)。。。 第一次手动在 Linux 下一步一步安装配置和使用 TIM,只想说MMP,要在Linux下用windows的程序正是不容易。之前失败的过程就不说了,下面是现在我基本能正常使用的安装过程。先说下环境我现在用的是 Ubuntu 17.10 amd64 的系统。 首先照着winehq官方的安装教程把wine安装好,很简单,我就不写在这里了,我这里安装的是 winehq-devel 版,地址在这里 https://wiki.winehq.org/Ubuntu(还想说句MMP的就是,之前的系统也是用的rime输入法,里面的五笔词库很全,现...
呆萌虎 发布于 2个月前 阅读 931 评论 6

Elastic X-Pack 代码已公开并上线

几个小时前, Elastic 商业插件 X-Pack 的源代码已正式 Merge 进 Master,作为一家开源软件公司,能够将商业部分的代码也公开,实在是需要很大的勇气(我深感自豪),这一切都是为了更好的打造一个更加好用的产品:Elastic Stack,只有开放才能走的更远! 想了解更多关于 X-Pack 代码公开背后的介绍,可以看 Elastic 创始人 Shay 的这篇博客:[https://elasticsearch.cn/article/513](https://elasticsearch.cn/article/513) 相关代码已在 github 上面可以找到: [Elasticsearch](https://github.com/elastic/elasticsearch/tree/master/x-pack) [Kibana](https://github.com/elastic/kibana/tree/master/x-pack) [Logstash](https://github.com/elastic/logstash/tree/master/x-pack) [Beats](https://github.com/elastic/beats/tree/master/x-pack) 有关问题可以在此回复,我会一一解答。...
Medcl 发布于 2个月前 阅读 416 评论 2

高阶爬虫实战:破解极验滑动验证码

今天给大家带来的是极验验证码的selenium破解之法,是不是有点小激动呢,小伙伴们等不及了,让我们赶紧直入主题吧。 虎X网注册 这次我们是拿虎X开刀,注册账号的时候需要滑动图片到缺口位置,这种验证码我们现在也经常遇到,这个就不用详细介绍了吧 针对这种验证码我们首先确定了使用selenium模拟滑动破解方式,selenium鼠标移动点击拖动都比较简单,那么问题就在于拖动多少距离,眼睛看起来很直观,但是程序怎么获取呢?利用图像识别……,额,这个只能想想了吧。不如看看网页源码或者请求信息,看看有没有有效的信息。 查看网页信息 鼠标右键点击到图片上,查看元素 这一瞬间的图片,还好我二十几年的麒麟臂没白练,我们看看元素查看到的都是什么东西 这看起来有点奇怪哦,有个图片链接,还有位置信息,而且还那么多,先把图片链接拷贝到浏览器里访问下看看 WTF,这是什么鬼?注意到那个像猪尾巴一样的6了吗?还有那个小箭头,跟上面完整图片对比一下,发现把箭头挪动到小6旁边,猪尾巴就成功了。当然你仔细观察的话,还有其他的比如文字也是类似。那么我们可以确认这张图片应该是被打乱的,如果我们可以把它拼起来,是不是就离计算缺口位置比较近了。现在我们应该要注意...
千龍 发布于 2个月前 阅读 1055 评论 13

区块链面试招聘中可能会被问到的40个问题。

1. 问:你认为区块链技术中的区块意味着什么? 区块链由所有金融交易的信息组成。一个块只不过是一个记录列表。当这些列表相互结合时,它们被称为区块链。例如,一个组织有100个分类账簿,其中的组合被称为区块链,单个分类账将被视为一个区块。 2. 问:为什么区块链是一种值得信赖的方法 有很多原因,区块链可以被信任。第一个原因是它与其他商业应用程序有良好的兼容性,因为它是开源的。其次是它的安全性,因为它是为了在线交易而开发的,所以开发人员在保证安全性的同时也特别关注它的数据同步。由于其拥有的业务类型无关,所以在选择的时候区别链很容易地被考虑。 3. 问:区块链中是否有可能从网络中删除一个或多个区块? 当然可以,如果只考虑该在线分类帐的特定部分的时候。借助默认选项和过滤器,可以轻松完成此任务,而不需要付出太多。 4. 问:你对区块链了解多少? 这是一种实际上为比特币设计的技术,后来因为监控和记录网络上所有金融交易而带来的多种好处而获得了大量的推广。这是一种值得信赖的方法,目前情况下有很多组织正在使用它。由于一切都是十分安全的,并且它是一种开源方式,所以从长远来看,它可以轻松获得大家的信任。 5. 问:区块链方法如何识别...
笔阁 发布于 2个月前 阅读 626 评论 1

Windows下以太坊区块链环境搭建

1、Geth是什么?         Geth 又名Go Ethereum. 是以太坊协议的三种实现之一,由Go语言开发,完全开源的项目。Geth 可以被安装在很多操作系统上,包括Windows、Linux、Mac的OSX、Android或者IOS系统。         Geth官网:https://geth.ethereum.org/         Geth的Github地址:https://github.com/ethereum/go-ethereum        Geth是以太坊协议的具体落地实现,通过Geth,你可以实现以太坊的各种功能,如账户的新建编辑删除,开启挖矿,ether币的转移,智能合约的部署和执行等等。        2、Geth安装         主要讲解Windows 环境下的Geth安装,下载Windows-Geth安装包直接安装即可: https://geth.ethereum.org/downloads/         下载后双击安装,安装完成后Geth会自己配置环境变量, 在命令行中执行 geth version  查看到版本即安装成功,如下: C:\Users\Administrator>geth version Geth Version: 1.8.3-stable Git Commit: 329ac18ef617d0238f71637bffe78f028b0f13f7 Architecture: amd64 Protocol Versions: [63 62] Network Id: 1 Go Version: go1.10 Operating System: windows GOPATH= GOROOT=C:\go   3、使用Geth启...
Oo若离oO 发布于 2个月前 阅读 613 评论 1 点赞 1

以太坊智能合约开发第六篇:truffle开发框架

> 原文发表于:[以太坊智能合约开发第六篇:truffle开发框架](https://www.marser.cn/article/141.html) 在前面几篇教程中,我们实现了一个简单的 ***Hello*** 合约,并通过 ***solc*** 编译器将合约代码编译后,部署在私有链Ganache上。本篇将介绍通过truffle框架来构建自动编译、部署合约代码。 ### truffle框架 Truffle是基于Solidity语言的一套开发框架,它简化了去中心化应用(Dapp)的构建和管理流程。本身是采用Javascript编写,支持智能合约的编译、部署和测试。 truffle开发框架提供了很多功能,简化了我们的开发、编译、部署与调试过程: * 内置了智能合约编译、链接、部署和二进制文件的管理 * 方便快速开发的合约自动化测试 * 方便扩展的、脚本化的部署与发布框架 * 方便的网络管理功能。不论是公有网络还是私有网络 * 基于[ERC190](https://github.com/ethereum/EIPs/issues/190)标准,使用EthPM & NPM进行依赖包管理 * 内置控制台功能。项目构建后,可以直接在命令行调用输出结果,方便了开发调试 * 可配的构建流程,支持持续集成。 * 支持外部脚本的执行 接下来,我们将通过truffle框架来构建 ***Hello*** 合约的编译、部署过程。 ### truffle安装 ```shell...
Marser_cn 发布于 2个月前 阅读 411

春季新增开源项目:可以斗图的 Markdown 编辑器,了解一下?

转眼间,春风又绿江南岸,2018 年悄然过去了四分之一,开发者的热情也似乎正在被回暖的天气点燃。2、3月份,开源中国社区总共收录了近 400 个项目。弱水三千取一瓢,我们从每月新增的开源项目挑选了几个和大家一起分享。
编辑部的故事 发布于 2个月前 阅读 9346 评论 9 点赞 10

Hugo+Caddy打造个人博客

--- title: "Hugo+Caddy打造个人博客" date: 2018-05-23T16:43:41+08:00 Categories: [Blog] Description: "搭建私有博客" Tags: [hugo,caddy] draft: false --- Hugo+Caddy打造个人博客,自动化构建博客系统,提交博客到Github即自动部署。 ### 前言 很久之前就想要搭建个人博客,在各种模板引擎之间无限徘徊,WordPress、Hexo、Jekyll都多多少少接触过,但是由于各种原因吧,一直都没有落地。很多人都推荐通过github部署博客,但是由于伟大的长城访问速度实在堪忧,因此便有了在私有服务器上部署的念头。因个人原因,现在偏向于golang,就顺水推舟选择了[Hugo](http://gohugo.io),也有[中文文档](http://www.gohugo.org),使用起来还是挺方便的。同时因为做过DevOps的缘故,非常喜欢自动化部署,经过长时间的摸索,最终确定了[Caddy](https://caddyserver.com)+Hugo的模式。 ### Caddy的安装与配置 #### 二进制安装 > 在Caddy[官方下载](https://caddyserver.com/download)页面下载可执行文件,记的勾选git与Hugo两个插件,会自编译生成压缩包,里面包含二进制包、安装指导还有自启动脚本等。 * 将二进制包拷贝到系统路径,并付给相应的权限 ``` bash sudo cp /path/to/...
Raphael_Zhang 发布于 3小时前

「华为云」云中优选惠,全场低至2折,6.19-6.30开抢,签到抽P20

华为云年中钜惠,注册抽免费高配(2核4G)云服务器,单人成团2折起抢购热销云产品;云服务器、数据库、安全防护、大数据等150+云产品,更有精彩好礼送不停!
华为云

Excel提取单元格中最后一个“.”后面的数据

java.lang.String   -----   String   =TRIM((MID(SUBSTITUTE(B2,".",REPT(" ",99)),(LEN(B2)-LEN(SUBSTITUTE(B2,".","")))*99,99)))
klog 发布于 4小时前

MODIS数据的简介和下载(六)——基于浏览器模拟登陆下载的方式以及D3L Tool开发

接上文,由于NASA官方弃用了FTP改用HTTPS服务,所以关于MODIS数据的下载方式有所改变。完整系列博客可以参照以下链接。本篇主要介绍的是我自己写的一个下载方式,以及我为了方便大家下载开发的一个带图形界面的下载工具。 [MODIS数据的简介和下载(一)——MODIS数据简介](https://giserdaishaoqing.github.io/2017/04/13/MODIS%E6%95%B0%E6%8D%AE%E7%9A%84%E7%AE%80%E4%BB%8B%E5%92%8C%E4%B8%8B%E8%BD%BD%EF%BC%88%E4%B8%80%EF%BC%89%E2%80%94%E2%80%94MODIS%E6%95%B0%E6%8D%AE%E7%AE%80%E4%BB%8B/) [MODIS数据的简介和下载(二)——MODIS数据下载方式(FTP)](https://giserdaishaoqing.github.io/2017/04/14/MODIS%E6%95%B0%E6%8D%AE%E7%9A%84%E7%AE%80%E4%BB%8B%E5%92%8C%E4%B8%8B%E8%BD%BD%EF%BC%88%E4%BA%8C%EF%BC%89%E2%80%94%E2%80%94MODIS%E6%95%B0%E6%8D%AE%E4%B8%8B%E8%BD%BD%E6%96%B9%E5%BC%8F%EF%BC%88FTP%EF%BC%89/) [MODIS数据的简介和下载(三)——MODIS数据下载方式(基于MODIS Web Service)](https://giserdaishaoqing.github.io/2017/04/15/MODIS%E6%95%B0%E6%8D%AE%E7%9A%84%E7%AE%80%E4%BB%8B%E5%92%8C%E4%B8%8B%E8%BD%BD%EF%BC%88%E4%B8%89%EF%BC...
胖胖雕 发布于 1个月前 阅读 11

在Windows上编译UEFI SDK 2018/OVMF的方法

本教程使用的操作系统是Windows 10 Enterprise 64位版本,编译器是Visual Studio 2017 Enterprise。 首先我们要准备好源代码和工具。  一、到这里下载UEFI SDK 2018(Release版本)并解压(我是解压到C:\目录),将解压好的目录改名为edk2。  二、安装和配置必备的工具(下载IASL/NASM/Python 2.7/cx_Freeze)。 1、将IASL解压到C:\ASL,并设置系统环境变量,变量名为IASL_PREFIX,变量值为C:\ASL\。 2、将NASM解压到C:\nasm,并设置系统环境变量,变量名为NASM_PREFIX,变量值为C:\nasm\。 3、安装Python 2.7,默认安装即可。并设置系统环境变量,变量名为PYTHON_HOME,变量值为C:\Python27。 4、安装cx_Freeze。并设置系统环境变量,变量名为PYTHON_FREEZER_PATH,变量值为C:\Python27\Scripts。 5、设置以下系统环境变量: BASE_TOOLS_PATH=C:\edk2\BaseTools EDK_TOOLS_PATH=C:\edk2\BaseTools 并将以下内容加入到Path系统环境变量的最前面: %IASL_PREFIX%;%EDK_TOOLS_PATH%\Bin\Win32;%NASM_PREFIX%;%PYTHON_HOME%;%PYTHON_HOME%\Scripts; 6、现在可以开工了。打开cmd控制台,输入以下命令: cd /d C:\edk2\BaseTools get_vsvars.bat vsdevcmd.bat toolsetup.bat ...
ryanliue 发布于 1个月前 阅读 33

懒惰根本就不存在

> 简评:芝加哥大学心理学教授,懒惰根本就不存在。(本文表面讲行为心理学实则讲教育) 金句:以好奇而不是判断来回应一个人的无效行为,是非常有帮助的。 本文「我」代表原作者 [E Price][1]。 自 2012 年来,我一直担任心理学教授,在过去的六年中我目睹了所有年龄段的学生各种拖延行为。他们拖论文,推答辩、错过任务、让自己的时间表混乱。我看到过很有才华的研究生不能及时的提交申请,也见过博士候选人几个月或者几年去修改一篇论文的草稿;我曾有个学生连续两年修一门课程却从没有交过一次作业。 我不认为懒惰有错。 永远都不这么认为。 因为,事实上我根本不相信懒惰的存在。 ··· 我是一名社会心理学家,所以我主要关注驱动人类行为的情景和环境。当你预测或者解释一个人的行为的时候,看看他的背景和所处的社会环境,通常是更好地参考标准。 所以我每当看到学生没有完成任务,错过了最后期限,或者在其他地方拖延的时候我总会思考:这个学生背负的情境因素是什么?目前没有满足什么需求?相对于懒惰,我更倾向于思考,他隐匿的行动障碍是什么。 一定是有障碍的。**认识到这些障碍并且承认他们的合理性,才是打破「懒惰」的第一步。** ··· 以好奇而不是判断...
极光推送 发布于 4小时前

提示此计算机当前已将连接限制为xxx的解决办法

netsh winsock reset命令,作用是重置 Winsock 目录。如果一台机器上的Winsock协议配置有问题的话将会导致网络连接等问题,就需要用netsh winsock reset命令来重置Winsock目录借以恢复网络。这个命令可以重新初始化网络环境,以解决由于软件冲突、病毒原因造成的参数错误问题。当执行完winsock的命令重启计算机后,需要重新配置IP。     插网线和wifi失败问题处理   首先打开控制面板,点击windows图标,弹出界面中选择控制面板 弹出空面板界面,里边有很多选项,找到网络和共享中心,点击进去 点击弹出的网络和共享中心中的更改适配器设置进去 找到本地连接,右键属性进去,弹出本地连接属性界面,里边明显多了一个猎豹的驱动,如下图中第二个图所示 选中猎豹的那个Liebao WiFi NAT Driver,颜色变深说明是选中的,点击下边的卸载按钮 就会弹出提示界面,点击确定即可             
lanjian28 发布于 5小时前

备战一线互联网公司Java工程师面试题 (2)

JVM 1、请介绍一下JVM内存模型??用过什么垃圾回收器都说说呗 2、线上发送频繁full gc如何处理? CPU 使用率过高怎么办? 如何定位问题?如何解决说一下解决思路和处理方法 3、知道字节码吗?字节码都有哪些?Integer x =5,int y =5,比较x =y 都经过哪些步骤? 4、讲讲类加载机制呗都有哪些类加载器,这些类加载器都加载哪些文件? 手写一下类加载Demo 5、知道osgi吗? 他是如何实现的??? 6、请问你做过哪些JVM优化?使用什么方法达到什么效果??? 7、classforName("java.lang.String")和String classgetClassLoader() LoadClass("java.lang.String") 什么区别啊?? Spring 1、spring都有哪些机制啊AOP底层如何实现的啊IOC呢?? 2、cgLib知道吗?他和jdk动态代理什么区别?手写一个jdk动态代理呗? 多线程 1、hashcode相等两个类一定相等吗?equals呢?相反呢? 2、介绍一下集合框架? 3、hashmap hastable 底层实现什么区别?hashtable和concurrenthashtable呢? 4、hashmap和treemap什么区别?低层数据结构是什么? 5、线程池用过吗都有什么参数?底层如何实现的? 6、sychnized和Lock什么区别?sychnize 什么情况情况是对象锁? 什么时候是全局锁为什么? 7、ThreadLocal 是什么底层如何实现?写一个例...
j4love 发布于 2个月前 阅读 94 评论 5

IDEA使用sonarLint

一、IDEA如何安装SonarLint插件 1.打开 Idea 2.点击【File】 3.点击【Settings】 4.点击【Plugins】 5.在搜索栏中输入“sonarlint”关键字 6.点击【Install】进行安装 7.重启Idea 二、IDEA如何连接Sonar服务器 1.打开 Idea 2.点击【File】→【Settings】 3.选择【SonarLint General Settings】 4.点击【+】 5.ConfigurationName:请输入连接名,如SonarQube 6.Choosea Connection Type:sonarqube 7.SonarQubeURL:http://xxxx 8.AuthenticationType:Login/Password •Login:请输入sonar系统登录用户名 •Password:请输入sonar系统登录密码 9.点击【Next】,提示连接成功 三、IDEA中SonarLint如何关联sonar已有项目 1.打开Eclipse 2.依次点击【File】→【Settings】→【OtherSettings】→【SonarLint Project Settings】 3.Bindto server:选择之前的sonar连接名,如SonarQube 4.点击【Updateproject list】,下载Sonar所有项目列表 5.在【SonarQubeproject】中选择sonar对应的项目名,如jar-kdc-api,点击【OK】完成关联 四、IDEA中SonarLint如何进行代码扫描 u扫描整个工程 1.打开 IDEA 2.右击项目名称,如jar-kdc-api 3.点击【SonarLint】 4.点击【AnalyzeAll Files ...
开源中国成都区源花 发布于 5小时前

屏蔽运营商广告劫持

在今天早上我查找知乎时再次遇到了恶心的运营商广告劫持,右下角硕大的广告直接让知乎挂掉了,我刷了五次知乎才好,之前休息的时候逛知乎也是多次加载错误,估计也是这劫持的锅,相信各位也遇到过不少的运营商劫持插广告,尤其是这电信的,解决办法一般有三种:改dns,投诉,自己屏蔽 dns有时候效果不错,虽然简单,但遇到http劫持就无能为力,顺便说下我自己用的是sdns,1.2.4.8,210.2.4.8 投诉一般是先投诉找运营商的客服进行投诉,一般情况客服会各种抵赖说是自己问题,比如网站本来就有,你设置不正确,中毒了,反正意思就是说不是他们的问题,但只要说向工信部投诉立马见效,效果有时候算是挺不错的,就是撕起来有些费时费力 屏蔽可以在路由器或终端的这一层做,近年的路由器应该大多数有这个功能,设置也简单,安卓手机可以root后使用相关命令或安装软件,我自己用的是windows上的方法,win10,就详细说下 按windows键,搜索安全,点击出来的本地安全策略,右键IP安全策略,选管理IP筛选器列表,点添加,再点添加,下一步,再下一步,选一个特定的ip地址,填你要屏蔽的ip地址,下一步,选我的ip地址,下一步,点完成,点确定,点上面的管理筛选器操作,再点添加,下一步...
gcudwork 发布于 4小时前

物流之家apk

[ 线下开发版 ](https://github.com/zhangyihome/wlzj/raw/master/apk/offline/release/wlzj-offline-2.5.2.apk) [ 线上正式版 ](https://github.com/zhangyihome/wlzj/raw/master/apk/online/release/wlzj-online-2.5.1.apk) ps:请在浏览器中打开
zhang555 发布于 3周前 阅读 55

Flatpak最新版已是面目全非

Flatpak是Linux应用程序沙箱和分发框架,最近已经更新到版本0.11.4,该维护更新引入了许多重要更改。对于Flatpak 0.11.4,开发团队更新了“Flatpak build”命令,以便始终使用multi-arch支持,并在构建过程中安装应用程序扩展。另外,“flatpak build-init”命令现在支持通过使用--extension参数添加比build-finish更早的扩展点,而build-finish现在支持--remove-extension参数。 “flatpak uninstall”命令也进行了更新,现在可以在未指定用户或系统的情况下自动选择用户或系统,“flatpak run”命令可以接收几个新选项,如--no-a11y-bus和 --no-documents-portal。此外,用户现在可以使用“flatpak remove”(不带引号)作为“flatpak uninstall”命令的别名。 在Flatpak 0.11.4版本中实现的其他变化中,新的Flatpak现在允许应用程序自己的沙盒,以及重新启动自己的新版本,还支持报废应用程序,和全新的AppStream分支格式使发行更有效率。为了向后兼容,旧的AppStream分支仍然生成。 还有各种较小但重要的调整可以让你的Flatpak体验变得更加美好和愉快,比如当下载应用程序时,flatpak版本已经包含在用户代理中,由于现在只清除本地仓库,所以多个应用的更新速度变得更快...
问题终结者 发布于 1个月前 阅读 24

MacOS 下登陆私有Docker 仓库并拉取镜像

Login docker registry and pull image with MacOS.
Swire 发布于 2个月前 阅读 64 评论 2

测试工具记录

1.jmeter  性能测试 2.fiddler  抓包工具 3.jmeter-socket   压力测试 4.sonar  代码检测工具 5.idea/eclipse  代码开发工具 6.mysql/Oracle  数据库 7.Linux  操作系统 8.postman  手动接口测试工具 9.jenkins  持续集成工具 10.Selinum  UI自动化工具 11.xshell  远程/安全终端模拟软件 12.QTP  自动化功能测试  
开源中国成都区源花 发布于 4小时前

使用JRTPLIB 进行简单的数据发送(TCP版)

#include "rtptcpaddress.h" #include "rtpsession.h" #include "rtpsessionparams.h" #include "rtptcptransmitter.h" #include "rtpipv4address.h" #include "rtptimeutilities.h" #include "rtppacket.h" #include "rtpabortdescriptors.h" using namespace jrtplib; void main() { #ifdef WIN32 WSADATA dat; WSAStartup(MAKEWORD(2,2),&dat); #endif RTPSession session; RTPAbortDescriptors m_descriptors; RTPSessionParams sessionparams; sessionparams.SetAcceptOwnPackets(true); sessionparams.SetOwnTimestampUnit(1.0/10.0); m_descriptors.Init(); RTPTCPTransmissionParams transparams; transparams.SetCreatedAbortDescriptors(&m_descriptors); int status = session.Create(sessionparams,&transparams,RTPTransmitter::TCPProto); if (status < 0) { std::cerr << "[session.Create]" << QString::fromStdString(RTPGetErrorString(status)); return; } //初始化socket SOCKET sockSrv = socket(AF_INET, SOCK_STREAM, 0); SOCKADDR_IN addrSrv; a...
cloudjx 发布于 3个月前 阅读 142

bootstrap carousel 淡入淡出效果

1、bootstrap carousel的基本轮播效果 <html> <body> <!--banner--> <div id="carousel" class="carousel slide carousel-fade" data-ride="carousel" data-interval="5000"> <!-- 轮播(Carousel)指标 --> <ol class="carousel-indicators"> <li data-target="#carousel" data-slide-to="0" class="active"></li> <li data-target="#carousel" data-slide-to="1"></li> <li data-target="#carousel" data-slide-to="2"></li> <li data-target="#carousel" data-slide-to="3"></li> <li data-target="#carousel" data-slide-to="4"></li> <li data-target="#carousel" data-slide-to="5"></li> </ol> <!-- 轮播(Carousel)项目 --> <div class="carousel-inner"> <div class="item active"> <img src="img/adv_03.jpg" width="100%"> </div> <div class="item"> <img src="img/adv_04.jpg" width="100%"> </div> <div class="item"> <img src="img/adv_05.jpg" width="100%"> </div> <div class="item"> <img src="img/adv_06.jpg" width="100%"> </div> <di...
HarleyZhuge 发布于 2个月前 阅读 19

springmvc+maven+netty-socketio服务端构建实时通信

Socket.IO:支持WebSocket协议、用于实时通信和跨平台的框架 WebSocket是HTML5的一种新通信协议,它实现了浏览器与服务器之间的双向通讯。而Socket.IO是一个完全由JavaScript实现、基于Node.js、支持WebSocket的协议用于实时通信、跨平台的开源框架,它包括了客户端的JavaScript和服务器端的Node.js。Socket.IO除了支持WebSocket通讯协议外,还支持许多种轮询(Polling)机制以及其它实时通信方式,并封装成了通用的接口,并且在服务端实现了这些实时机制的相应代码。Socket.IO实现的Polling通信机制包括Adobe Flash Socket、AJAX长轮询、AJAX multipart streaming、持久Iframe、JSONP轮询等。Socket.IO能够根据浏览器对通讯机制的支持情况自动地选择最佳的方式来实现网络实时应用。当前,Socket.IO最新版本是于2015年1月19日发布的1.3.0版本,该版本增强了稳定性和提高了性能,并修复了大量Bug。   Socket.IO设计的目标是构建能够在不同浏览器和移动设备上良好运行的实时应用,如实时分析系统、二进制流数据处理应用、在线聊天室、在线客服系统、评论系统、WebIM等。目前,Socket.IO已经支持主流PC浏览器(如IE、Safari、Chrome、Firefox、Opera等)和移动平台上的浏览器(...
facula 发布于 3个月前 阅读 41

ThinkSNS 2018年五一劳动节放假及值班通知!

在此全体ThinkSNS成员祝各位新老客户和广大朋友们五一劳动快乐!
ThinkSNS账号 发布于 2个月前 阅读 8

微信小程序 - 发起网络请求并解析 json 字符串

在平常web开发中发送请求则使用AJAX,而在小程序开发中发起网络请求则使用 wx.request({object}),下面分享下小程序发起网络请求。 API:
hello_hp 发布于 4周前 阅读 20

网络编程懒人入门(六):深入浅出,全面理解HTTP协议

本文引用了自简书作者“涤生_Woo”的文章,内容有删减,感谢原作者的分享。 1、前言 HTTP(全称超文本传输协议,英文全称HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。 对于移动端即时通讯(尤其IM应用)来说,现今主流的数据通信总结下来无外乎就是长连接+短连接的方式,而短连接在应用上讲就是本文将要介绍的HTTP协议的应用,而而正确地理解HTTP协议对于写好IM来说,是相当有益的(关于移动端的HTTP具体应用情况,可以阅读《现代移动端网络短连接的优化手段总结:请求速度、弱网适应、安全保障》)。 本篇文章篇幅比较长,先来个思维导图预览一下: 学习交流: - 即时通讯开发交流3群:185926912[推荐] - 移动端IM开发入门文章:《新手入门一篇就够:从零开发移动端IM》 (本文同步发布于:http://www.52im.net/thread-1677-1-1.html) 2、“HTTP之父”其人 ▲ “HTTP之父”——Ted Nelson ▲ HTTP协议logo 1960年Ted Nelson构思了一种通过计算机处理文本信息的方法,并称之为超文本(hypertext),这成为了HTTP超文本传输协议标准架构的发展根基。...
JackJiang- 发布于 5天前 阅读 14

以太坊生产网络/测试网络/私有网络 + Geth搭建私有网络实战

在本章中我们将实战如何使用Geth,如何搭建以太坊的私有网络。
东子 发布于 3个月前 阅读 158

Chrome提示:Flash Player与您的地区不相容

​ 今天发现使用chrome浏览器时,打开flash的网站后就出现"**此Flash Player 与您的地区不相容**"的提示信息。 按照提示操作后,点击 “重新安装” 按钮打开的是 [2144网站](https://flash.2144.com/) ,不是真实的Adobe官方网站。 ​ 一个即将消亡的技术,竟然还耍流氓,瞬间心里飞过十万个。。。。。。 ### 官网安装 ​ 打开 [Adobe的官网](https://get.adobe.com/cn/flashplayer/) (如何打开,就不说了,大家懂得),下载Flash Player版本,经过安装后不再出现`地区不兼容的提示`,则问题得到圆满解决。 ​ 如果问题依然存在,则继续向下看。 ### 安装低版本 ​ 卸载已安装的Adobe Flash Player PPAPI,在网上下载 低于 30.0.0 的Adobe Flash Player PPAPI 离线包安装,同时设置为”不检查更新“。 可在此处下载 [Flash Player PPAPI 25、26]( https://www.portablesoft.org/adobe-flash-player-offline-installer/)两个版本,如需其他版本自寻找。 ​ 查看当前win7、10系统,已安装的Flash版本: > ​ 控制面板 -> Flash Player -> 更新 ### 禁止Chrome更新Flash插件 ​ 在Chrome安装目录下有一个名叫PepperFlash得文件夹,删除该文件夹下的所有内容,将该文件夹权限设...
lukezp 发布于 1周前 阅读 1007 点赞 1

思考

时间一天天过感觉自己有在成长吗?最怕的是时光匆匆而过,自己没有收获!下面总结下最近自己的思考。 认识自己 认识另一个自己,人们常说要虚心听取别人意见和建议。然而人往往是很难做到的,我自己都很难到。认识到自己弱点和缺点,这个过程都会有一些情绪,别人向你提出问题自己不去思考而是找各种理由去回避、找借口去搪塞别人不了了之,甚至有的人会认为对方是不是成心让你难堪,这一切都来自于自己的那可怜的自尊心和自己的不自信,不愿意承认自己的问题,固执的坚持自己的观点,更别提接受别人的建议了。 在听取别人的建议时候,让自己变的冷静思考去分析问题,我之前会因为些事或者面对别人的指责和谩骂跟他人大打出手,现在劳资不气不气了而是想好问题所在一条一条的去回复他人怎么解决,因为我想大声说句 md 劳资不在热血了,反而我会为对方感到可怜他永远不知道自己的问题在哪里。通过自己经历一些事情之后,我才明白承认弱点不是向他投降,而是克服他的第一步。直到遇到很多我感觉很牛的人,我才慢慢的接受了并且认识到了一个平平凡凡的自己。也渐渐的学会如何去倾听别人的意见,要抱有开放性的心态,去向别人学习,反思自己,带着脑子去说话去做事,这样能给自...
hello_hp 发布于 2天前 阅读 36 评论 2

开源中国博客征文啦,是时候展现真正的技术了

开源中国官方博客征稿了。欢迎投稿,文章一旦被官方账号收录,我们会在网站首页等位置进行推荐。 投稿内容要求 互联网技术相关,包括但不限于开发语言、网络、数据库、架构、运维、前端、DevOps(DevXXX)、AI、区块链、存储、移动、安全、技术团队管理等内容。 文章不需要首发,可以是已经在开源中国博客或网上其它平台发布过的。 如果你是记录某一次解决了某一个问题(这在博客中占绝大比例),那么需要将问题的前因后果描述清楚,最直接的就是结合图文等方式将问题复现,同时完整地说明解决思路与最终成功的方案。 如果你是分析某一技术理论知识,请从定义、应用场景、实际案例、关键技术细节、观点等方面,对其进行较为全面地介绍。 如果你是以实际案例分享自己或者公司对诸如某一架构模型、通用技术、编程语言、运维工具的实践,那么请将事件相关背景、具体技术细节、演进过程、思考、应用效果等方面描述清楚。 其它未尽 case 具体情况具体分析,不虚的,文章投过来试试先,比如我们并不拒绝就某个热点事件对其进行的报导、深入解析。 投稿方式 以 Word 或者 Markdown 文档的形式将稿件投递到 oscbianji@oschina.cn 邮箱 重要说明 作者需要拥有所投文章的所有权,不能...
编辑部的故事 发布于 1个月前 阅读 1384 评论 9 点赞 3

「华为云」云中优选惠,全场低至2折,6.19-6.30开抢,签到抽P20

华为云年中钜惠,注册抽免费高配(2核4G)云服务器,单人成团2折起抢购热销云产品;云服务器、数据库、安全防护、大数据等150+云产品,更有精彩好礼送不停!
华为云

五月新增开源项目:“复刻” Win 95 到 iOS;Grails 框架作者携最新力作登场

五月份开源中国社区收录了相当多的重量级开源项目,如 Node 之父 Ryan Dahl 的 deno,deno 也被认为是下一代 Node;Grails 框架作者的最新力作,微服务应用框架 Micronaut;还有少见的用 Vue.js 构建跨平台原生桌面应用的开源项目 Vuido
编辑部的故事 发布于 2周前 阅读 3703 评论 2 点赞 2

新手向一键脚本搭建SS/SSR服务并开启BBR加速

自己写的一键搭建shadowsocks/shadowsocksR的脚本,一键脚本适用Vultr上的和搬瓦工所有机型(CentOS、Ubuntu、Debian),搭建ss服务器支持所有客户端类型,本机你是iOS,Android,Windows,Mac,或者是Linux,搭建ss/ssr都是适用的。一键脚本搭建SS/SSR服务器,绝对没有任何问题,任何问题欢迎留言。一键脚本内容包括一键搭建shadowsocks/一键搭建shadowsocksR+一键开启bbr加速。 录了个视频教程,不想看文字的可以看视频,或者结合起来一起看:[搭建ss视频教程](https://www.flyzy2005.com/fan-qiang/shadowsocks/install-shadowsocks-in-one-command/#vultrss)。 ## 什么是shadowsocks shadowsocks可以指一种SOCKS5的加密传输协议,也可以指基于这种加密协议的各种数据传输包。 **shadowsocks原理**?shadowsocks正常工作需要服务器端和客户端两端合作实现,首先,客户端(本机)通过ss(shadowsocks)对正常的访问请求进行SOCK5加密,将加密后的访问请求传输给ss服务器端,服务器端接收到客户端的加密请求后,解密得到原始的访问请求,根据请求内容访问指定的网,得到网站的返回结果后,再利用SOCKS5加密并返回给客户端,客户端通过ss解密后得到正常的访问结果,于是就可...
flyzy2005 发布于 1周前 阅读 73 评论 2

大型分布式电商系统架构是如何从0开始演进的?

本文是学习大型分布式网站架构的技术总结。对架构一个高性能、高可用、可伸缩及可扩展的分布式网站进行了概要性描述,并给出一个架构参考。文中一部分为读书笔记,一部分是个人经验总结,对大型分布式网站架构有较好的参考价值。 一、大型分布式网站架构技术 1、大型网站的特点 用户多,分布广泛 大流量,高并发 海量数据,服务高可用 安全环境恶劣,易受网络攻击 功能多,变更快,频繁发布 从小到大,渐进发展 以用户为中心 免费服务,付费体验 2、大型网站架构目标 高性能:提供快速的访问体验。 高可用:网站服务一直可以正常访问。 可伸缩:通过硬件增加/减少,提高/降低处理能力。 安全性:提供网站安全访问和数据加密、安全存储等策略。 扩展性:方便地通过新增/移除方式,增加/减少新的功能/模块。 敏捷性:随需应变,快速响应;   3、大型网站架构模式 分层:一般可分为应用层、服务层、数据层、管理层与分析层; 分割:一般按照业务/模块/功能特点进行划分,比如应用层分为首页、用户中心。 分布式:将应用分开部署(比如多台物理机),通过远程调用协同工作。 集群:一个应用/模块/功能部署多份(如:多台物理机),通过负载均衡共同提供对外访问。 缓存:将数据...
编辑部的故事 发布于 1个月前 阅读 4438 评论 15 点赞 26

idea,pycharm 修改host激活方式

1、使用的激活码 EB101IWSWD-eyJsaWNlbnNlSWQiOiJFQjEwMUlXU1dEIiwibGljZW5zZWVOYW1lIjoibGFuIHl1IiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IkZvciBlZHVjYXRpb25hbCB1c2Ugb25seSIsImNoZWNrQ29uY3VycmVudFVzZSI6ZmFsc2UsInByb2R1Y3RzIjpbeyJjb2RlIjoiSUkiLCJwYWlkVXBUbyI6IjIwMTgtMTAtMTQifSx7ImNvZGUiOiJSUzAiLCJwYWlkVXBUbyI6IjIwMTgtMTAtMTQifSx7ImNvZGUiOiJXUyIsInBhaWRVcFRvIjoiMjAxOC0xMC0xNCJ9LHsiY29kZSI6IlJEIiwicGFpZFVwVG8iOiIyMDE4LTEwLTE0In0seyJjb2RlIjoiUkMiLCJwYWlkVXBUbyI6IjIwMTgtMTAtMTQifSx7ImNvZGUiOiJEQyIsInBhaWRVcFRvIjoiMjAxOC0xMC0xNCJ9LHsiY29kZSI6IkRCIiwicGFpZFVwVG8iOiIyMDE4LTEwLTE0In0seyJjb2RlIjoiUk0iLCJwYWlkVXBUbyI6IjIwMTgtMTAtMTQifSx7ImNvZGUiOiJETSIsInBhaWRVcFRvIjoiMjAxOC0xMC0xNCJ9LHsiY29kZSI6IkFDIiwicGFpZFVwVG8iOiIyMDE4LTEwLTE0In0seyJjb2RlIjoiRFBOIiwicGFpZFVwVG8iOiIyMDE4LTEwLTE0In0seyJjb2RlIjoiUFMiLCJwYWlkVXBUbyI6IjIwMTgtMTAtMTQifSx7ImNvZGUiOiJDTCIsInBhaWRVcFRvIjoiMjAxOC0xMC0xNCJ9LHsiY29kZSI6IlBDIiwicGFpZFVwVG8iOiIyMDE4LTEwLTE0In0seyJjb2RlIjoiUlNVIiwicGFpZ...
Alex142857 发布于 3个月前 阅读 685

发生了什么?Linus 又发怒了?

在一个 Linux 内核 4.18-rc1 的 Pull Request 中,开发者 Andy Shevchenko 表示其在对设备属性框架进行更新时,移除了 union 别名,这引发了 Linus 的暴怒。 这一次 Linus Torvalds 发怒的原因在于 Andy 给出的移除 union 别名的原因是“根据标准行事”。Linus 回复邮件认为 Andy 这样的解释简直就是垃圾,并且还很危险,他解释使用 union 别名本身其实就是一种在 gcc 中的传统和标准,甚至它实际上已经是一种成文规定,并大骂对方白痴,同时大骂 C 标准是垃圾,言辞激烈。 “你为什么做出这样的解释呢,不要跟我说什么 C 标准描述得不清楚,C 标准有时就是一坨屎”,Linus 接着解释:“你所谓的这个标准,它对于别名规则的指导完全就是错误的!它需要被完全地无视,并且每个编译器都要为这样脑残的标准给出相应的解决方案,这就是我们使用 -fwrapv 和 -fno-strict-aliasing 的原因。而你现在竟然说根据这样一个标准来行事,你这样的理由真的没有任何意义。” Linus 全程围绕 Andy 给出的理由“根据标准行事”进行抨击,他的意思是当标准与现实和代码的可靠性相冲突时,那么标准就是不重要的,“我一再强调:当标准与现实相冲突时,那标准文档就是卫生纸,它就完全没意义...
问题终结者 发布于 2天前 阅读 20

记录一次用搬瓦工从零开启搭建ss服务器的经历

搬瓦工是一个老牌VPS服务商,以价格低廉为卖点,最低一年20美元。搬瓦工后台自带一键安装shadowsocks的功能,方便新手搭建ss服务器,支持支付宝,本文从零开始教你搭建ss服务器访问外网。不需要你输入任何代码,全部是傻瓜式操作,并且此搭建SS服务器适用于各种常见终端设备(Windows、Mac OS、安卓、IOS等等)。 教程分为3部分内容,包括购买搬瓦工,在搬瓦工后台搭建shadowsocks server端和配置本地客户端ss。 ## 购买搬瓦工服务器用于搭建ss服务端 进入[搬瓦工官网](https://bwh1.net/aff.php?aff=29975)注册一个账号:[年付19.99美元KVM架构VPS](https://bwh1.net/aff.php?aff=29975)。 选好服务器种类后(19.99刀的服务器总是售罄,也可以选择49.99美元一年的那个服务器,也不贵),选择**Order KVM**,Billing Cycle如下图所示,分为Monthly(月付),Quarterly(3个月),Semi-Annually(半年付),Annually(年付),建议选择Annually,因为年付相比每月付款等于 5.5 折!搬瓦工也有 **30天退款保证**,觉得不好用再申请退款也可以。 ![billing.jpg](https://upload-images.jianshu.io/upload_images/10321061-bae19fb52b01ab58.jpg?imageMogr2/auto-orient/strip%7...
flyzy2005 发布于 2个月前 阅读 271

ShadowsocksR 推荐协议混淆设置

协议推荐: 协议用auth_chain_a最佳,此时推荐不使用加密(设置为none),混淆随意 加密选择:若协议用auth_chain_a,那加密用none(但不代表密码可以不写或两边不匹配) 若协议不是auth_aes128_md5或auth_aes128_sha1,那么不能使用rc4加密(可用rc4-md5)。这时加密可以在rc4-md5、salsa20、chacha20-ietf三个里面选择(rc4-md5可换为aes系列,salsa20可换为chacha20或bf-cfb), 如果使用SSR还可特别选择rc4-md5-6。 混淆推荐: 如果QoS在你的地区明显,混淆建议在http_simple与tls1.2_ticket_auth中选择,具体选择可以通过自己的试验得出。 如果选择混淆后反而变慢,那么混淆请选择plain。如果你不在乎QoS,但担心你的个人vps能不能持久使用,那么混淆选择plain或tls1.2_ticket_auth,协议选择auth_chain_a或auth_aes128_md5或auth_aes128_sha1 如果你用于玩游戏,或对连接延迟有要求的情况下,建议不要使用tls1.2_ticket_auth混淆,用其它混淆或plain 服务端里,http_simple与http_post是相互兼容的,没有使用上的区别 如果你在公司,或学校,或某些环境下,发现原版SS协议不可用,建议你启用http_simple、http_post或tls1.2_ticket_auth混淆,同时端口相应使用80或4...
niithub 发布于 1个月前 阅读 220

笔试题之Java基础部分【简】【二】

1.静态变量和实例变量的区别 在语法定义上的区别:静态变量前要加static关键字,而实例变量前则不加。 在程序运行时的区别:实例变量属于某个对象的属性,必须创建了实例对象,其中的实例变量才会被分配空间,才能使用这个实例变量。静态变量不属于某个实例对象,而是属于类,所以也称为类变量,只要程序加载了类的字节码,不用创建任何实例对象,静态变量就会被分配空间,静态变量就可以被使用了。总之,实例变量必须创建对象后才可以通过这个对象来使用,静态变量则可以直接使用类名来引用。 例如,对于下面的程序,无论创建多少个实例对象,永远都只分配了一个staticVar变量,并且每创建一个实例对象,这个staticVar就会加1;但是,每创建一个实例对象,就会分配一个instanceVar,即可能分配多个instanceVar,并且每个instanceVar的值都只自加了1次。 public class VariantTest{ public static int staticVar = 0; public int instanceVar = 0; public VariantTest(){ staticVar++; instanceVar++; System.out.println(“staticVar=” + staticVar + ”,instanceVar=” + instanceVar); } } 备注:这个解答除了说清楚两者的区...
anlve 发布于 2天前 阅读 15

笔试题之Java基础部分【简】【一】

基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语法,集合的语法,io 的语法,虚拟机方面的语法,其他 1.length、length()和size() length针对数组,数组的长度用length length()针对字符串String,字符串的长度用length() size()针对泛型集合,有多少元素用size() 2.jdk中哪些类是不能继承的? 不能继承的是类是那些用final关键字修饰的类。 一般比较基本的类型或防止扩展类无意间破坏原来方法的实现的类型都应该是final的,在jdk中System,String,StringBuffer等都是基本类型。 3.用最有效率的方法算出2乘以8 2 << 3, 因为将一个数左移n位,就相当于乘以了2的n次方,那么,一个数乘以8只要将其左移3位即可,而位运算cpu直接支持的,效率最高,所以,2乘以8等於几的最效率的方法是2 << 3。 4.short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错? 对于short s1 = 1; s1 = s1 + 1; 由于s1+1运算时会自动提升表达式的类型,所以结果是int型,再赋值给short类型s1时,编译器将报告需要强制转换类型的错误。 对于short s1 = 1; s1 += 1;由于 += 是java语言规定的运算符,java编译器会对它进行特殊处理,因...
anlve 发布于 2天前 阅读 17 评论 2

性能优化的基本常识

性能优化的定义:在不影响系统运行正确性的前提下,使之运行的更快,完成特定的时间更短 上面的定义笼统,我们从五个方面进行阐述: 1.运算的性能——哪一个算法的执行性能好 2.内存的分配——程序需要分配多少内存,运行时的效率和性能最高 3.启动的时间——程序启动需要多少时间 4.程序的可伸缩性——程序在用户负载过重的情况下的表现 5.性能的认识——用户怎样才能认识到程序的性能
anlve 发布于 2天前 阅读 9

致我们再也回不去的 Github ...

1、前言 相信大家都知道了,微软已确认要收购 GitHub 了,Github官方也在Github网站显眼位置给出了CEO的确认收购博客文章。具体多少钱收购的还不得而知,但是据知情人士透漏,GitHub 之所以放弃了原有的上市计划,而选择出售给微软,部分原因是因为他们对微软 CEO 萨提亚·纳德拉印象非常深刻。 ▲ Github官网上的庆祝页   ▲ 上图左一为萨蒂亚·纳德拉、中间是盖茨、右一为鲍尔默 嗯,这大概就是所谓的「确认过眼神」吧。 (本文同步发布于:http://www.52im.net/thread-1635-1-1.html) 2、微软在程序员心目中的形象并不佳 GitHub 被微软收购,网上一大堆程序员嘲讽,很多人可能会觉得微软的产品挺好的,纳闷为什么被嘲讽? 其实,在硅谷,嘲讽微软非常普遍,硅谷的码农门喜欢 Google、Facebook 这类开放、年轻的公司,而微软一直给人的感觉是封闭、守旧,自然不被硅谷的码农们待见。 3、实际上微软早已是开源最积极的贡献者之一 其实最近的 10 年,开源非常流行,GitHub 也是在这期间发展起来的,逐渐的成为程序员最喜欢的开源社区,众多科技顶尖公司也纷纷加入开源的怀抱,这几年微软看到形势后,说实话,也没以前那么封闭了,为开源界也做出了不少贡献。还记得 2017...
JackJiang- 发布于 2周前 阅读 765 评论 10 点赞 1

金山WPS发布了Linux WPS Office

导读 近日,金山WPS发布了Linux WPS Office中文社区版新版本,支持大部分主流Linux系统,功能更加完善,兼容性、稳定性大幅度提升。本次更新WPS将首次在Linux提供专业办公文件云存储服务,实现跨系统、跨终端的联动。据悉,金山WPS已经推出Mac内测版,而Linux的文档上云版本发布,是否意味着WPS Office成为了全球可以支持全平台操作的办公软件? 破局Linux系统应用软件缺乏,提升用户体验 Linux系统发布以来,以其免费、稳定、高效、开源等特点受到开发者的喜欢,但其图形界面不如其他主流系统简单易用,因此,在个人桌面领域普及受到限制。近些年来随着 Ubuntu、Fedora 等优秀桌面环境的兴起,同时各大硬件厂商对其支持的加大,让Linux 在个人桌面领域的占有率在逐渐的提高。但大多的应用软件开发商出于商业考虑难以为其开发适用的软件,作为日常办公必用的办公软件更是Linux用户的痛处。   金山WPS本次发布的Linux WPS中文社区版新版本(版本号10.1.0.6634),既提升了Linux用户的日常办公体验,同时也进一步打通了不同操作系统间的隔阂,解决了用户不同操作系统来回切换的尴尬,用户在不同系统上都能畅享简单高效的办公体验。新版从设计及功能上回应了长久以来网友的呼...
问题终结者 发布于 3天前 阅读 13

VS 2017/Qt/OpenCV/CMake开发环境搭建

本教程使用的操作系统是Windows 10 Enterprise 64位版本,编译器是Visual Studio 2017 Enterprise,OpenCV 3.4.1,CMake 3.11.1。 一、首先我们要准备好以下软件和工具。 1、安装Visual Studio 2017(目前最新版是15.6.7)。点这里下载安装。安装时勾选“使用C++的桌面开发”。 2、安装Qt 5.10.1。点这里下载安装。如果不会选择组件的话,全选就可以了。然后到这里下载安装Qt for VS 2017插件。装好插件后打开VS 2017,点击菜单“Qt VS Tools --> Qt Options”,添加Qt for VS 2017的所在目录,如“C:\Qt\Qt5.10.1\5.10.1\msvc2017_64”,保存设置即可。 3、安装OpenCV。点这里下载安装。安装过程其实就是一个解压过程,解压到C:\就行了。 4、安装CMake。点这里下载安装。我下载的是Windows win64-x64 ZIP版本,解压到C:\,改名为cmake就行了。 二、使用CMake创建OpenCV.sln。 1、创建OpenCV.sln。运行C:\cmake\bin\cmake-gui.exe,设置“Where is the source code”为C:/opencv/sources,设置“Where to build the binaries”为C:/opencv/build,点击“Configure”按钮开始配置,工具链选择“Visual Studio 15 2017 Win64”。需要注意的是在配置的过程中需要联网下载文件,...
ryanliue 发布于 1个月前 阅读 62

Docker Toolbox Looks like something went wrong

**Docker Toolbox 重新安装后提示错误:Looks like something went wrong in step ´Checking if machine default exists´** 控制面板-->程序与应用-->启用或关闭windows功能:找到Hyper-V,如果处于勾选状态,取消勾选,重新运行Docker。 环境:window10 64位专业版,下载的[Docker ToolBox](https://www.docker.com/community-edition#/download "Docker ToolBox") 安装好后,运行正常,又启用了Hyper-V,再运行就出错,卸载掉之后运行正常。
随你疯 发布于 2天前 阅读 8

建表规约【参照阿里巴巴Java开发手册】

1. 【强制】表达是与否概念的字段,必须使用 is_xxx 的方式命名,数据类型是 unsigned tinyint ( 1 表示是,0 表示否)。 说明:任何字段如果为非负数,必须是 unsigned。 正例:表达逻辑删除的字段名 is_deleted,1 表示删除,0 表示未删除。 2. 【强制】表名、字段名必须使用小写字母或数字,禁止出现数字开头,禁止两个下划线中间只出现数字。数据库字段名的修改代价很大,因为无法进行预发布,所以字段名称需要慎重考虑。 说明:MySQL 在 Windows 下不区分大小写,但在 Linux 下默认是区分大小写。因此,数据库 名、表名、字段名,都不允许出现任何大写字母,避免节外生枝。 正例:aliyun_admin,rdc_config,level3_name 反例:AliyunAdmin,rdcConfig,level_3_name 3. 【强制】表名不使用复数名词。 说明:表名应该仅仅表示表里面的实体内容,不应该表示实体数量,对应于 DO 类名也是单数 形式,符合表达习惯。 4. 【强制】禁用保留字,如 desc、range、match、delayed 等,请参考 MySQL 官方保留字。 5. 【强制】主键索引名为 pk_字段名;唯一索引名为 uk_字段名;普通索引名则为 idx_字段名。 说明:pk_ 即 primary key;uk_ 即 unique key;idx_ 即 index ...
anlve 发布于 4天前 阅读 33

ubuntu下C++与Python混编,opencv中mat类转换

## C++ 与 Python 混编 ## 因为赶项目进度,需要使用到深度学习的内容,不过现有的深度学习框架大多使用python代码,对于不会改写C++的朋友来说,需要耗费大量的时间去改写,因此,使用python与C++混编可以快速的查看效果,并作出选择。 在c++中使用混编python需要用到基础头文件Python.h,最好需要使用boost中的python,boost将底层python重新封装,更好的使用c++调用python。 头文件需要包括 ``` #include #include using namespace boost::python; ``` c++调用python需要先初始python的相关东西。根据python的版本分开 ``` #if (PY_VERSION_HEX >= 0x03000000) static void *init_ar() { #else static void init_ar(){ #endif Py_Initialize(); import_array(); return NUMPY_IMPORT_ARRAY_RETVAL; } ``` 在项目的开始需要调用inti_ar()。代码片段图下: ``` init_ar(); char str[] = "Python"; Py_SetProgramName(str); ``` 然后判断python是否已经初始化 ``` if(!Py_IsInitialized()) cout << "init faild/n" << endl; ``` 之后可以测试一下python是否可用直接在c++中写python语句,如下: ``` PyRun_SimpleString("import sys"); PyRun_SimpleString("sys.path.appen...
KyJason 发布于 3周前 阅读 30

微信小程序 - 选择图片显示操作菜单

之前我分享过选择图片这个文章,但是我在实际开发测试使用中发现一个问题在使用 wx.chooseImage 选择照片显示出第一格是拍照,后面是相册里的图片。这种实现之前说过了,效果如下。 但是你从用户体验角度多想一下来说无疑是下面这种方式比较好,类似微信点击发朋友圈这种形式,效果如下。(微信就是屌奥) 做法:可使用小程序API wx.showActionSheet 显示操作菜单 。 我的实现方式直接贴代码: chooseimage: function () { var that = this; wx.showActionSheet({ itemList: ['从相册中选择', '拍照'], itemColor: "#CED63A", success: function (res) { if (!res.cancel) { if (res.tapIndex == 0) { that.chooseWxImage('album') } else if (res.tapIndex == 1) { that.chooseWxImage('camera') } } } }) }, chooseWxImage: function (type) { var that = this; wx.chooseImage({ sizeType: ['original', 'compressed'], sourceType: [type], // 可以指定来源是相册还是相机 success: function (re...
hello_hp 发布于 3天前 阅读 11

Hugo+Caddy打造个人博客

--- title: "Hugo+Caddy打造个人博客" date: 2018-05-23T16:43:41+08:00 Categories: [Blog] Description: "搭建私有博客" Tags: [hugo,caddy] draft: false --- Hugo+Caddy打造个人博客,自动化构建博客系统,提交博客到Github即自动部署。 ### 前言 很久之前就想要搭建个人博客,在各种模板引擎之间无限徘徊,WordPress、Hexo、Jekyll都多多少少接触过,但是由于各种原因吧,一直都没有落地。很多人都推荐通过github部署博客,但是由于伟大的长城访问速度实在堪忧,因此便有了在私有服务器上部署的念头。因个人原因,现在偏向于golang,就顺水推舟选择了[Hugo](http://gohugo.io),也有[中文文档](http://www.gohugo.org),使用起来还是挺方便的。同时因为做过DevOps的缘故,非常喜欢自动化部署,经过长时间的摸索,最终确定了[Caddy](https://caddyserver.com)+Hugo的模式。 ### Caddy的安装与配置 #### 二进制安装 > 在Caddy[官方下载](https://caddyserver.com/download)页面下载可执行文件,记的勾选git与Hugo两个插件,会自编译生成压缩包,里面包含二进制包、安装指导还有自启动脚本等。 * 将二进制包拷贝到系统路径,并付给相应的权限 ``` bash sudo cp /path/to/...
Raphael_Zhang 发布于 3小时前

测试工具记录

1.jmeter  性能测试 2.fiddler  抓包工具 3.jmeter-socket   压力测试 4.sonar  代码检测工具 5.idea/eclipse  代码开发工具 6.mysql/Oracle  数据库 7.Linux  操作系统 8.postman  手动接口测试工具 9.jenkins  持续集成工具 10.Selinum  UI自动化工具 11.xshell  远程/安全终端模拟软件 12.QTP  自动化功能测试  
开源中国成都区源花 发布于 4小时前

屏蔽运营商广告劫持

在今天早上我查找知乎时再次遇到了恶心的运营商广告劫持,右下角硕大的广告直接让知乎挂掉了,我刷了五次知乎才好,之前休息的时候逛知乎也是多次加载错误,估计也是这劫持的锅,相信各位也遇到过不少的运营商劫持插广告,尤其是这电信的,解决办法一般有三种:改dns,投诉,自己屏蔽 dns有时候效果不错,虽然简单,但遇到http劫持就无能为力,顺便说下我自己用的是sdns,1.2.4.8,210.2.4.8 投诉一般是先投诉找运营商的客服进行投诉,一般情况客服会各种抵赖说是自己问题,比如网站本来就有,你设置不正确,中毒了,反正意思就是说不是他们的问题,但只要说向工信部投诉立马见效,效果有时候算是挺不错的,就是撕起来有些费时费力 屏蔽可以在路由器或终端的这一层做,近年的路由器应该大多数有这个功能,设置也简单,安卓手机可以root后使用相关命令或安装软件,我自己用的是windows上的方法,win10,就详细说下 按windows键,搜索安全,点击出来的本地安全策略,右键IP安全策略,选管理IP筛选器列表,点添加,再点添加,下一步,再下一步,选一个特定的ip地址,填你要屏蔽的ip地址,下一步,选我的ip地址,下一步,点完成,点确定,点上面的管理筛选器操作,再点添加,下一步...
gcudwork 发布于 4小时前

懒惰根本就不存在

> 简评:芝加哥大学心理学教授,懒惰根本就不存在。(本文表面讲行为心理学实则讲教育) 金句:以好奇而不是判断来回应一个人的无效行为,是非常有帮助的。 本文「我」代表原作者 [E Price][1]。 自 2012 年来,我一直担任心理学教授,在过去的六年中我目睹了所有年龄段的学生各种拖延行为。他们拖论文,推答辩、错过任务、让自己的时间表混乱。我看到过很有才华的研究生不能及时的提交申请,也见过博士候选人几个月或者几年去修改一篇论文的草稿;我曾有个学生连续两年修一门课程却从没有交过一次作业。 我不认为懒惰有错。 永远都不这么认为。 因为,事实上我根本不相信懒惰的存在。 ··· 我是一名社会心理学家,所以我主要关注驱动人类行为的情景和环境。当你预测或者解释一个人的行为的时候,看看他的背景和所处的社会环境,通常是更好地参考标准。 所以我每当看到学生没有完成任务,错过了最后期限,或者在其他地方拖延的时候我总会思考:这个学生背负的情境因素是什么?目前没有满足什么需求?相对于懒惰,我更倾向于思考,他隐匿的行动障碍是什么。 一定是有障碍的。**认识到这些障碍并且承认他们的合理性,才是打破「懒惰」的第一步。** ··· 以好奇而不是判断...
极光推送 发布于 4小时前

Excel提取单元格中最后一个“.”后面的数据

java.lang.String   -----   String   =TRIM((MID(SUBSTITUTE(B2,".",REPT(" ",99)),(LEN(B2)-LEN(SUBSTITUTE(B2,".","")))*99,99)))
klog 发布于 4小时前

IDEA使用sonarLint

一、IDEA如何安装SonarLint插件 1.打开 Idea 2.点击【File】 3.点击【Settings】 4.点击【Plugins】 5.在搜索栏中输入“sonarlint”关键字 6.点击【Install】进行安装 7.重启Idea 二、IDEA如何连接Sonar服务器 1.打开 Idea 2.点击【File】→【Settings】 3.选择【SonarLint General Settings】 4.点击【+】 5.ConfigurationName:请输入连接名,如SonarQube 6.Choosea Connection Type:sonarqube 7.SonarQubeURL:http://xxxx 8.AuthenticationType:Login/Password •Login:请输入sonar系统登录用户名 •Password:请输入sonar系统登录密码 9.点击【Next】,提示连接成功 三、IDEA中SonarLint如何关联sonar已有项目 1.打开Eclipse 2.依次点击【File】→【Settings】→【OtherSettings】→【SonarLint Project Settings】 3.Bindto server:选择之前的sonar连接名,如SonarQube 4.点击【Updateproject list】,下载Sonar所有项目列表 5.在【SonarQubeproject】中选择sonar对应的项目名,如jar-kdc-api,点击【OK】完成关联 四、IDEA中SonarLint如何进行代码扫描 u扫描整个工程 1.打开 IDEA 2.右击项目名称,如jar-kdc-api 3.点击【SonarLint】 4.点击【AnalyzeAll Files ...
开源中国成都区源花 发布于 5小时前

提示此计算机当前已将连接限制为xxx的解决办法

netsh winsock reset命令,作用是重置 Winsock 目录。如果一台机器上的Winsock协议配置有问题的话将会导致网络连接等问题,就需要用netsh winsock reset命令来重置Winsock目录借以恢复网络。这个命令可以重新初始化网络环境,以解决由于软件冲突、病毒原因造成的参数错误问题。当执行完winsock的命令重启计算机后,需要重新配置IP。     插网线和wifi失败问题处理   首先打开控制面板,点击windows图标,弹出界面中选择控制面板 弹出空面板界面,里边有很多选项,找到网络和共享中心,点击进去 点击弹出的网络和共享中心中的更改适配器设置进去 找到本地连接,右键属性进去,弹出本地连接属性界面,里边明显多了一个猎豹的驱动,如下图中第二个图所示 选中猎豹的那个Liebao WiFi NAT Driver,颜色变深说明是选中的,点击下边的卸载按钮 就会弹出提示界面,点击确定即可             
lanjian28 发布于 5小时前

OSChina 周三乱弹 —— 这样的女人私生活太混乱了

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @ 胖达panda :你经历过体验到人生的大起大落吗?我一朋友在10秒内体验了,哈哈。@小小编辑 请点一首《almost lover》送给他。 《almost lover》 手机党少年们想听歌,请使劲儿戳(这里) @凌渡  :人生三大幻觉 足球会赢 房价会跌 股票会涨 总是有许多幻想的, 谁都不能免俗, “虎鲸大人还仰望星空呢,吃腻小鱼干了,想吃飞禽。” 赌球输了, 投资的股市都是原谅色, 想买的房价倒是蹭蹭上涨, 好了,我决定了, @暗影系  :股友们,天台见 不过你现在去跳楼要排队了, @红薯  :哀鸿遍野 那么问题来了, @亦可塞艇  :股市全部是绿的,中国股民的钱最终都去了哪里? 感觉股市是个阴谋, 是个测试, “我都投了300元了,怎么机器还是绿的?” 投出去的钱越来越多, 但是挣的钱越来越少了 @SummerOnline :到手工资越来越少 是呀, 现在都开始做兼职了, “听说这样能多吃一顿小鱼干。” 但工作时间却越来越长了。 @后身  :各位大佬看看我是不是入坑了,驻场开发 这样下去, 算上加班, 你的工作经验能比同行高一大截。 @The-Dawn  :你们有没有考虑35甚至是40岁以后干撒, 至少我觉得35还可以继续撸码 “楼上这个家伙又...
小小编辑 发布于 7小时前 阅读 2647 评论 27 点赞 3

彻底删除Microsoft Office的方法

参照此链接彻底删除Office https://support.office.com/zh-cn/article/%e4%bb%8e-pc-%e5%8d%b8%e8%bd%bd-office-9dd49b83-264a-477a-8fcc-2fdf5dbf61d8?ui=zh-CN&rs=zh-CN&ad=CN
Kampfer 发布于 16小时前

1.03-Maven中使用ueditor富文本编辑器

起因:在maven仓库未找到百度的ueditor的jar包 操作:     1.下载百度的ueditor的jar包     2.打开命令行,切换到ueditor的下载位置,运行一下命令: mvn install:install-file -Dfile=ueditor-1.1.2.jar -Dpackaging=jar -DgroupId=com.baidu -DartifactId=ueditor -Dversion=1.1.2 ​ 3.打开maven的本地仓库中com/baidu/ueditor中是否有ueditor的jar包 ,即可判定是否安装成功  
静以修身2025 发布于 20小时前 阅读 4

1.02-关于json-lib下jdk15的依赖配置

​在<classifier>标签中指定具体的包 <dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.4</version> <classifier>jdk15</classifier> </dependency>  
静以修身2025 发布于 20小时前 阅读 1

1.01-StringUtils的使用

import org.apache.commons.lang.StringUtils; 一、StringUtils 常用的方法:     1. 判断某一字符串是否为空 , 为空的标准是 str==null 或 str.length()==0 StringUtils.isEmpty(null) ==>true StringUtils.isEmpty("") ==>true StringUtils.isEmpty(" ") ==>false     2. 判断某字符串是否为空或长度为0或由空白符(whitespace)构成 StringUtils.isBlank(null) ==>true StringUtils.isBlank("") ==>true StringUtils.isBlank(" ") ==>true     3. 截取字符串 StringUtils.substring(str, 0, 2) ==>截取某部分的字符串 StringUtils.substring(str,2) ==>从那开始截取字符串     4. 字符串中的字母转换 1.1 首字母小写变大写 StringUtils.capitalize(str) 1.2 首字母大写变小写 StringUtils.uncapitalize(str) 1.3 字符串整体变大写 StringUtils.upperCase(str) 1.4 字符串整体变小写 StringUtils.lowerCase(str) 1.5 字符串大小写互换 StringUtils.swapCase(str)     5.  判断字符串是否全部是大写或小写(空或空白符均为false) 1.1 判断字符串是否全是小写 StringU...
静以修身2025 发布于 20小时前

2.02-Maven的相关配置

1.下载 下载地址:https://maven.apache.org/download.cgi     (如:apache-maven-3.5.3-bin.zip) 2.解压 选择maven要存放目录,解压下载的压缩包 3.配置Maven环境 确认jdk已安装, 打开电脑属性-高级系统设置-环境变量在系统变量中进行设置: (两者可以选一个也可以都选) MAVEN_HOME    : maven加压后的根目录(如:D:\DevTools\apache-maven-3.5.2) M2_HOME       : maven加压后的根目录(如:D:\DevTools\apache-maven-3.5.2) 在Path中末尾添加:%MAVEN_HOME%\bin  或者    %M2_HOME%\bin   (选一个即可) 4.测试 win+r 输入cmd打开控制台,在控制台中输入mvn -v命令, 能显示maven的版本即安装成功。 5.配置 <1>默认是在  c盘下的.m2中的repository <2> 默认是中央仓库,但离得远下的慢,建议使用阿里云镜像等 <!--阿里云镜像--> <mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> </mirror> <!--开源中国镜像--> <!-- <mirror> <id>nexus-osc</id> <mirro...
静以修身2025 发布于 20小时前 阅读 3

2.01-JDK的安装配置

1.在 http://www.oracle.com/ 官网上下载好自己所需的版本 2.运行,选择目录进行安装,jre可以不安装 3.环境配置 打开电脑属性-高级系统设置-环境变量在系统变量中进行设置: JAVA_HOME  :  指定jdk安装的根目录,例如:C:\Program Files\Java\jdk1.8.0_152 CLASSPATH    :  .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; Path(修改)        : %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin 4.测试 win+r  输入cmd 在控制台中分别输入java和javac后显示如下图即安装成功   和    
静以修身2025 发布于 21小时前 阅读 1

将博客搬至CSDN

换个地方耍耍,不知道有些私人博客,能不能搬过去
章大大 发布于 23小时前 阅读 4

内核线程、轻量级进程、用户线程

线程与进程概念 在现代操作系统中,进程支持多线程。 进程是资源管理的最小单元; 线程是程序执行的最小单元。 即线程作为调度和分配的基本单位,进程作为资源分配的基本单位 一个进程的组成实体可以分为两大部分:线程集和资源集。进程中的线程是动态的对象;代表了进程指令的执行。资源,包括地址空间、打开的文件、用户信息等等,由进程内的线程共享。 线程概念的产生 传统单线程进程的缺点 现实中有很多需要并发处理的任务,如数据库的服务器端、网络服务器、大容量计算等。 传统的UNIX进程是单线程的,单线程意味着程序必须是顺序执行,不能并发;既在一个时刻只能运行在一个处理器上,因此不能充分利用多处理器框架的计算机。 如果采用多进程的方法,则有如下问题: fork一个子进程的消耗是很大的,fork是一个昂贵的系统调用,即使使用现代的写时复制(copy-on-write)技术。 各个进程拥有自己独立的地址空间,进程间的协作需要复杂的IPC技术,如消息传递和共享内存等。 多线程的优缺点 多线程的优点和缺点实际上是对立统一的。 支持多线程的程序(进程)可以取得真正的并行(parallelism),且由于共享进程的代码和全局数据,故线程间的通信是方便的。它的缺点也是由于线程...
117 发布于 24小时前 阅读 4

skywalking 遇到的坑

1.进入UI 后,报500错误,页面找不到, 很有可能是你的es没有装好,或者collector 与es没有绑定好,如何确定呢? ps下你的collector是否起来了. 使用H2的数据库,然后启动skywalking,刷新ui,如果可以看到正常的UI,就说明你的collector和es之间有问题 查看collector的log, 2.由于使用-Djava.ext.dirs=libs/ \ 这个配置启动程序,导致导致skywalking无法监控到我们的应用,使用-cp替代 #!/bin/bash java -Xdebug -Xrunjdwp:transport=dt_socket,address=8095,server=y,suspend=n \ -javaagent:agent/skywalking-agent.jar \ -Djava.ext.dirs=libs/ \ -Dspring.config.location=config/bb.properties \ -Dlog4j.configuration=config/log4j.properties \ com.guanyou.dcp_msg_consumer.DcpMsgConsumerApplication \ ###############使用上面的方法启动后,skywalking监控不到消息,使用下面的就可以了 #!/bin/bash java -Xdebug -Xrunjdwp:transport=dt_socket,address=8095,server=y,suspend=n \ -javaagent:agent/skywalking-agent.jar \ -cp "libs/*" \ -Dspring.config.location=config/bb.properties \ -Dlog4j.configuration=config/log4j.properties \ ...
努力爬坑人 发布于 1天前 阅读 5

【码云5周年获奖名单】确认过眼神,你是中奖的那个人

对于在【GIVE ME FIVE】码云5周年活动中积极参与的码云用户 我们只想说:感谢!感谢!感谢! (鸡冻的心情要表达三次!) 不明白的吃瓜群众 可以移步:https://gitee.com/gitee-stars/gitee 了解活动详情               其实当看到那么多多多多多留言的时候 我们的内心是吃!鲸!的! 吃鲸之余不禁感慨: 没想到码云的童鞋文案都这么优秀了哇 每一条留言仿佛都能看到自己的影子 先不多说了,颁奖最重要!!!   首先是活动一获奖的5位用户名单   Gavin要加油:我变了,变得更加热爱开源了,我没变,没变的是对开源的热情!   唐强:我变了,不再闭门造车,喜欢分享经验;我没变,一直想要做到更好,不是比别人做的更好,而是相较于之前的自己。   苏格拉底:我变了,一个懵懂无知的少年,变成了日益成熟的码农,我没变,我依旧在为梦想而努力拼搏着。   红壶吃猬队:五年前我准备高考,五年后工作一年。我变了,从当年风风火火的小伙子变成了思维成熟、行事干练的青年,我没变,一直认为努力就可以让自己过得更好,也,一直在努力。   神奇海螺:我变了,从一个根本不属于这个行业的文科生,单靠着梦想和兴趣的指引,仅凭自学踏进了码农这个行业...
码云Gitee 发布于 1天前 阅读 3

小白必读:闲话HTTP短连接中的Session和Token

本文引用了刘欣的文章,感谢原作者的分享。 1、引言 Http协议在现今主流的IM系统中拥有无可替代的重要性(在IM系统中用HTTP发起的连接被大家简称为http短连接),但Http作为传统互联网信息交换技术,一些典型的概念比如:Session、Token,对于新手程序员来说很陌生。 很多文章动辄长篇大论、高屋建瓴地从底层协议再到上层分布式应用式的讲解,根本不适合傻白甜程序员,本文的写作目的是以最白话地方式,通俗易懂的为你讲清HTTP协议中的Session和Token等概念,希望读完全文,您仍能满怀信心,继续义无反顾地跳入程序员这个职业深坑 ^_^。更深入的技术细节,请阅读《IM开发基础知识补课(四):正确理解HTTP短连接中的Cookie、Session和Token》。 学习交流: - 即时通讯开发交流3群:185926912[推荐] - 移动端IM开发入门文章:《新手入门一篇就够:从零开发移动端IM》 (本文同步发布于:http://www.52im.net/thread-1686-1-1.html) 2、互联网源起 1990年12月25日,罗伯特·卡里奥在CERN(即位于日内瓦的欧洲原子核研究会)和蒂姆·伯纳斯·李一起成功通过Internet实现了HTTP代理与服务器的第一次通讯(有关HTTP的详细介绍,请见《网络编程懒人入门(六):深入浅出,全面理解H...
JackJiang- 发布于 1天前 阅读 4

Sublime Text3 快捷键

选择类 Ctrl+D 选中光标所占的文本,继续操作则会选中下一个相同的文本。 Alt+F3 选中文本按下快捷键,即可一次性选择全部的相同文本进行同时编辑。举个栗子:快速选中并更改所有相同的变量名、函数名等。 Ctrl+L 选中整行,继续操作则继续选择下一行,效果和 Shift+↓ 效果一样。 Ctrl+Shift+L 先选中多行,再按下快捷键,会在每行行尾插入光标,即可同时编辑这些行。 Ctrl+Shift+M 选择括号内的内容(继续选择父括号)。举个栗子:快速选中删除函数中的代码,重写函数体代码或重写括号内里的内容。 Ctrl+M 光标移动至括号内结束或开始的位置。 Ctrl+Enter 在下一行插入新行。举个栗子:即使光标不在行尾,也能快速向下插入一行。 Ctrl+Shift+Enter 在上一行插入新行。举个栗子:即使光标不在行首,也能快速向上插入一行。 Ctrl+Shift+[ 选中代码,按下快捷键,折叠代码。 Ctrl+Shift+] 选中代码,按下快捷键,展开代码。 Ctrl+K+0 展开所有折叠代码。 Ctrl+← 向左单位性地移动光标,快速移动光标。 Ctrl+→ 向右单位性地移动光标,快速移动光标。 shift+↑ 向上选中多行。 shift+↓ 向下选中多行。 Shift+← 向左选中文本。 Shift+→ 向右选中文本。 Ctrl+Shift+← 向左...
AndyZhouX 发布于 1天前 阅读 2

使用 Git-Analyze 玩转 Git

git-analyze 是一个基于 libgit2 的 git 工具集,包括 git-analyze,git-complete, git-rollback,以及 git-cheat 等
Force武装卫队 发布于 4周前 阅读 1451 评论 5 点赞 3

码云即将支持 Git v2 Protocol

Git v2 Protocol aka Git Wire Protocol
Force武装卫队 发布于 4周前 阅读 1421 评论 12 点赞 4

「华为云」云中优选惠,全场低至2折,6.19-6.30开抢,签到抽P20

华为云年中钜惠,注册抽免费高配(2核4G)云服务器,单人成团2折起抢购热销云产品;云服务器、数据库、安全防护、大数据等150+云产品,更有精彩好礼送不停!
华为云

一个33岁老程序员的感悟

每个人都会有这样的感触,小的时候上学,老师讲课拖堂1分钟就会很烦躁,不喜欢的课听不进去,学不好,内心一直是一种抵触的状态。但如果换是出去玩,打游戏就会有无穷的力量,游戏一打就是一天,或者一夜。 那为什么会产生这样的结果,很多大人都会说,如果你能把玩游戏的劲的1/3用在学习上,都会大有不同,但绝大多数人都是做不到的,因为那时我们还小,不懂这个道理,不懂为什么要努力学习。 我从小就学习不好,但有一个东西我学的很好,就是计算机。 我从上小学6年级的时候就会自己安装操作系统了(win95年代,并没有ghost这种东西),而且完全是自学,后来上初中学会各种office软件的使用,因为ppt里可以做动画,让我萌生了很大的兴趣,连老师都来问我ppt怎么做,初2开始正式接触编程(qbasic),而这一切,都源于我的兴趣,正如前面那句话,如果我把1/3的努力都放在了学习上,我可能还能踏入学霸的行列。 那为什么学习自己感兴趣的东西会有无穷的力量,而学习不感兴趣的会有无穷的阻力,这个互联网上有太多的说法和文章,我也就不去列举资料了,我只想谈谈自己的看法。 在我看来学习分为几个状态 一:被迫学习 这种动力绝大多数来源于父母,在父母的高压之下完成的学习,...
Polly蜀黍 发布于 3个月前 阅读 5537 评论 54 点赞 19 打赏 6

软件工程师必知之事 —— 如何定义自己的职业路线?

  社区中并不缺少有关软件工程师职业发展的文章,甚至可以说是泛滥。很多人都能在这个话题上说两句,三五年工作经验的编程老鸟也好,架构师也好,技术 VP 也好,CTO 也好,都有各自的看法与实践经验。没有哪一套方法是适用于所有人的,这一套软件工程师职业发展纲要,也不过是在你踽踽前行的路上,迷茫时可用来参考借鉴。你的核心竞争力,永远是你的自身实力。切记! 一、专业技能学习捷径 1、爱上你的编码神器   众所周知,软件工程师要做的工作就是写代码,准确地说,你的目标应该是写出满足业务需求并且无法找出 Bug 的代码,而不是写一大堆没用的文字。既然你的任务是写出高质量的代码,那么你首先应该训练的就是打字速度,你需要掌握键盘盲打技能,甚至还要爱上你的“编码神器”,并做到将此工具的用法烂熟于心,闭上眼睛都能正确敲中你想要的快捷键。 2、熟悉底层技术原理   当你完全驾驭了计算机的输入设备以后,你需要进一步了解计算机的内部工作原理,不是让你把机器大卸八块,而是你需要全面了解计算机的组成结构与工作原理。如果你不是计算机科班出生也没关系,在网上买一本关于计算机组成原理的书自学即可。你无需做到精通,能全面了解即可,因为接下来你...
黄勇 发布于 3个月前 阅读 6353 评论 33 点赞 30

开源作者遭受小白的9种伤害

在帮助小白解决了很多开源使用的问题后,我总结了小白的不科学的提问方式,以遭受9种伤害夸张的手法一一道来
闲大赋 发布于 3个月前 阅读 7181 评论 86 点赞 49 打赏 12

MariaDB的延迟开源模式及其BSL许可证介绍(一)

本文主要内容:①我为啥拖延;②MariaDB的BSL许可证;③BSL示例。下一步准备介绍下MySQL和MariaDB的版权细节问题。
中国政法大学开源研究 发布于 7个月前 阅读 1058 评论 1 点赞 2

Java混淆工具 ProGuard之初体验

**1.混淆工具版本** 本文使用的是ProGuard这一款Java代码混淆工具。 因为在我们实际的开发工作中,有些程序包含了公司核心产品的代码,所以为了保护自身的知识产权,避免程序包不小心外流出去,我们有必要进行一些保护措施,在程序开发完之后,需要将程序代码进行混淆。 本文使用的是ProGuard v5.3.3版本。 下载地址:http://www.jb51.net/softs/242707.html **2.混淆工具安装步骤** 2.1下载后的文件是一个压缩包: ![输入图片说明](https://static.oschina.net/uploads/img/201711/05141208_UU6w.png "在这里输入图片标题") 2.2 解压压缩包 ![输入图片说明](https://static.oschina.net/uploads/img/201711/05141219_crA0.png "在这里输入图片标题") **3.混淆工具使用步骤** 3.1 解压后,执行 bin目录下的proguardgui.bat ![输入图片说明](https://static.oschina.net/uploads/img/201711/05141328_A5vq.png "在这里输入图片标题") 执行proguardgui.bat后如图: ![输入图片说明](https://static.oschina.net/uploads/img/201711/05141356_BC65.png "在这里输入图片标题") 注意:执行proguardgui.bat后会出现一个cmd命令框,不要关闭,最小化即可。 3.2 点击左侧菜单栏中的...
godcvcv 发布于 7个月前 阅读 3195 评论 9 点赞 2

给苹果电脑选机械键盘

机械键盘的轴体选择是见痛苦的事,不知道哪款轴体是最适合自己的,我的第一部机械键盘是 IKBC C87 青轴。青轴使用了一年多,对机械键盘越来越了解,期间跟同事交换使用,体验机械键盘其他轴体茶轴和红轴,最终发现真正适合自己的是红轴。
netkiller- 发布于 8个月前 阅读 1670 评论 21 点赞 1

在CentOS 7 上使用PaceMaker构建NFS HA服务

## 基本环境 * 总共四台虚拟机,安装CentOS 7 X64系统。 * 每台虚拟机两张网卡,分别连接两个网络,NAT网络192.168.195.0,仅主机网络192.168.162.0。 * Target主机安装iSCSI TGT服务,提供共享存储服务。 * Test1和Test2主机利用Target主机提供的共享存储对外提供A/P结构的NFS服务,使用PaceMaker进行集群管理。 * Develop主机mount有Test主机提供的NFS服务并测试其功能。 ## 网络配置 ### IP地址 使用静态IP地址,并按如下的方式进行配置。 Target eth0 : 192.168.195.131 eth1 : 192.168.162.131 Test1 eth0 : 192.168.195.132 eth1 : 192.168.162.132 Test2 eth0 : 192.168.195.133 eth1 : 192.168.162.133 Develop eth0 : 192.168.195.136 eth1 : 192.168.162.136 NFS使用的浮动IP为:192.168.195.200。 ### 域名解析 在四台机器的域名解析文件下增加如下部分,并确保相互可以ping通。 $ vi /etc/hosts 192.168.195.131 target 192.168.195.132 test1 192.168.195.133 test2 192.168.195.136 develop ## 配置iSCSI ### 安装tgt服务 在Target主机上执行如下操作: 安装软件包 $ yum install -y scsi-target-utils iscsi-initiator-utils 配置tgt服务,使用/dev/sdd1分区...
LastRitter 发布于 9个月前 阅读 1670 评论 4 点赞 1

道哥:我人生有两大选择,为的却都是同一件事

视频在这里:https://v.qq.com/x/page/b0519geiro4.html 《初心》十集技术人物纪录片 | 第八集 由 InfoQ 二叉树 出品 吴瀚清,又称刺、aullik5、大风、道哥、小黑,现任阿里云首席安全研究员,云盾负责人。《白帽子讲Web安全》作者,微信公众号:道哥的黑板报。 少年时代 我从小到大一直都是学霸,除了上大学之后。 我出生在一个医生和教师的家庭,在湖南大学长大,周围的同学可能都是大学老师的孩子,这种环境的熏陶让我养成了在学习方面比较刻苦的习惯,考试总是拿第一第二。 但其实这种环境比较压抑人的个性,也就导致我的内心实际上还是有一点点的叛逆,在进入大学没人管之后,就开始叛逆,然后开始研究黑客技术。 我大学没有做对一件事情,可能唯一做对的事情就是把幻影(注:吴瀚清在大学期间创办的安全社区)做下去了。 我觉得幻影有它有运气的地方,也有它没有运气的地方,其实当时创办它没有那么复杂的想法,纯粹是出于技术上的一种狂热,所以就成立了这么一个团体。 我们没有收入来源,在当时遭遇了一些 DDOS 攻击,然后就把它给关掉了,到今天比较惋惜。 难能可贵的是其中有一些人把他们做的事情一直延续到了今天,这些人基本上都成为了现在这些安全公司的一些...
夕水溪下 发布于 12个月前 阅读 2568 评论 10 点赞 4

从Visual Studio看微软20年技术变迁

前言 这个世界从来都不缺变革,从工业革命到晶体管和集成电路,从生活电器到物联网,从简陋人机到精致体验,我们在享受技术带来的便捷的同时,也在为复杂设计而带来的挑战和生产力下降而痛并快乐着。而迫切期盼的,就是趁手的工具。曾几何时,Visual Studio 一直就是软件开发的高效的标杆,从VB的简洁语法和简单的拖拽开始,Visual Studio 不断的完善,不断的适应快速变化的,加上成熟的生态,让微软世界里的各个伙伴们活的有滋有味。 近年来,微软开始了拥抱开源,投资云技术,在开发工具领域有明显的减持,这也让很多追随者感到不安。如今 Visual Studio 2017 的发布,给了开发者几点很明确的信号: 移动开发前景无限,解决方案多样化 跨平台服务器支持和服务器轻量化 开发过程标准化和开发效率持续提升 服务优于产品 作为微软工具的受益人,我们相信这是一个好的变化,有了变化,才有提升,才能提供更好的服务。   回顾 那么,在 Visual Studio 的20年发展历程中,都经历了哪些历程和技术变革呢?   根据微软的资料,第一个使用 Visual Studio 品牌销售的是 Visual Studio 97,后续版本(VS6)成为一代经典,即使今日依然还有企业和公司在使用;之后 Visual Studio 携...
葡萄城控件技术团队 发布于 1年前 阅读 3666 评论 27 点赞 7

通过 WSL在Windows下愉快的玩耍Linux

WSL(Windows Subsystem for Linux) 是 在Windows系统中为那些熟悉Linux用户准备的诸多子系统功能。换言之,你可以在Windows环境下来执行Linux操作,运行 Linux程序。这对于Windows、Linux双系统有需求的用户来说是个不错的功能。本文详细介绍了如何使用 WSL
waylau 发布于 1年前 阅读 3585 评论 43 点赞 5

100行C代码终端打印树形结构

这是一篇讲究套路的数据结构实战教学文,阅读需要约20分钟。
我的上铺叫路遥 发布于 1年前 阅读 3511 评论 3 点赞 7

深度桌面操作系统架构设计

今天就结合深度桌面操作系统给大家讲讲桌面操作系统的架构设计和原理细节,一来向外界讲讲深度这么多年都做了哪些工作,二来希望通过客观公正的事实向中国新一代的开源爱好者讲述怎么用正确的三观去贡献自己的力量。 ### 什么是桌面操作系统? 简而言之,桌面操作系统就是大家平常个人电脑里面用的操作系统。 桌面操作系统应该是所有操作系统类型中最为复杂、研发技术难度最高的一种操作系统了。 世界上非常优秀的桌面操作系统有微软的Windows和苹果的Mac OS,其他的Linux桌面操作系统,比如Fedora、Suse、Ubuntu包括我们自己的Deepin,虽然这十几年取得了长足的进步,但是相对于Windows和Mac OS,不论技术先进性、交互设计还是产品质量方面都还有非常大的差距。 ### 桌面操作系统都有哪些部分组成? 一个普通用户使用的桌面操作系统的组成部分主要包括: * 内核、驱动以及固件:主要用于驱动硬件可以正常工作,除了CPU、内存、磁盘外,最主要的要是要广泛兼容不同的网卡、显卡、声卡和外设等硬件设备 * 软件仓库及众多开发库:如果没有开源社区众多大神打包好的软件仓库和各种开发库,要基于Linux来开发一个操作系统甭说开源爱好者,甚至就是一个中型公司都很难做起来,可...
ManateeLazyCat 发布于 1年前 阅读 6910 评论 118 点赞 96 打赏 4

免费个人博客搭建教程(详细-图文)--Hexo+OSChina

本人作为一个屌丝程序员,**年少无为,卖马为生**,买不起服务器,买不起域名,但是又想拥有属于自己的博客网站,那就只有通过技术来实现这一切了。先上成果:[点击](http://z77z.oschina.io/),现在我把我自己搭建博客的过程共享出来,只要你按照步骤一步步走下去,一定会搭建成功,如果大家在搭建过程中遇到什么问题,欢迎在我的博客评论区留言,也欢迎大神进来,教我做码,带我装逼,带我飞。**[博客地址](http://z77z.oschina.io/)**,JUST DO IT(`离开舒适区`)。
邹海清 发布于 1年前 阅读 8498 评论 145 点赞 19

Wijmo 全球产品经理:从网页设计到Web开发,专注创造性技术开发

本期开源中国《妮子有约》专访Wijmo产品的全球产品经理 Chris Bannon先生。
编辑部的故事 发布于 2年前 阅读 2699 评论 3 点赞 7

【源创专访】叶倍宏:做有个性,有情怀的IT教学者

在珠海源创会开始之前,笔者有幸对叶倍宏老师( @hayeah )进行了采访。台湾同胞一枚。前自由职业者,远程办公,边旅行边工作,在云南大理住了 2 年。现在来广州发展思客教学,做有情怀的 IT 教学。 1、能否先介绍一下你自己(技术背景、工作经历、学习经历) 我叫叶倍宏,台湾人,从小跟随家人移民到加拿大,小学六年级便在国外读书。一直在国外读书、工作。这几年出来成为自由职业者,主要在亚洲区域边旅行边工作。第一次回国,发现国内发展非常好,而刚好这时在国内的大学同学的邀请下,这种契机下,来到了深圳一起创业。目前在广州成立了一所培训学校。 2、前期作为自由职业者,边旅行边工作,那段时期你有什么收获想和我们分享吗? 分不同的阶段的自由职业吧。读大学的时候变开始自己兼职接外面/朋友公司的项目做。一直很少像上班族那样整体坐在办公室里,基本都是在家里码代码,养成了一种习惯。目前,国外很多公司的管理也是很开放式的,看重产出。只要你将自己的事情做完,也不会过多的要求你非要在办公室。 边旅行边工作的话,在我看来是个选择的问题。你可以选择朝九晚五的上班,换取收入的保障,但你也必须付出固定的时间。或者你可以选择自由职业,没有收入保...
编辑部的故事 发布于 2年前 阅读 1313 评论 10

【源创专访】PingCAP 唐刘:重度开源爱好者眼中的 “ 开源精神 ”

在刚刚结束的珠海源创会上,笔者见到了红薯多年的好基友,PingCAP 首席架构师唐刘。其目前致力于下一代分布式数据库 TiDB、分布式存储 TiKV 的开发。开源爱好者,Go、Rust 等语言爱好者和实践者。重度开源爱好者,现正在为打造中国的 F1 和 Spanner 而努力。 大家好,我叫唐刘。在加入 PingCAP 之前呢,在腾讯、金山都“打过酱油”(唐刘老师很幽默哈~~)。一次机缘巧合,PingCAP 创始人想要做一个分布式的数据库产品,而我也非常感兴趣,因此就加入了 PingCAP。 唐刘老师的介绍和他的人一样,简单幽默。 作为一名重度开源爱好者,在他眼中的“开源精神”是怎样的呢? 我所理解的开源是一个生态。目前国内很多开发者经常是把源代码放到托管平台就不管了,开源不仅仅是开源代码这么简单。做一个开源软件,从源代码到维护全过程,包括开源软件的远程关系,其实是一件非常难的事情,需要考虑很多的问题。因此,我觉得国内的开发者应该要有维护开源软件全过程的意识,将代码分享给更多有需要的人,解决他们的问题。而不仅仅只是把代码开源出来就不管了。 唐刘老师对“开源精神”深刻的理解:开源是个生态闭环,从源代码到维护的全过程,将细小的事情做到极致,分享给更多的人。...
编辑部的故事 发布于 2年前 阅读 1561 评论 3 点赞 6

技术往事:改变世界的TCP/IP协议(珍贵多图、手机慎点)

本文将简要回故TCP/IP协议的过去、简单介绍TCP/IP协议族的关系,并与大家一起直观地分享由TCP/IP协议族所构建的虚拟网络与真实世界的“连接”情况。
JackJiang- 发布于 2年前 阅读 6739 评论 19 点赞 31

理解Bellman-Ford算法

Bellman-Ford算法(下文中简称为BF)与[Dijkstra算法](http://my.oschina.net/qiaotoubao/blog/735349)一样,解决的是单源最短路径问题。两者不同之处在于,后者只适用于无负权边的图,而BF无此限制:只要图中没有负权环,则该算法可以正确地给出起点到其余各点的最短路径,否则报告负权环的存在。 很多资料(比如[维基百科](https://zh.wikipedia.org/wiki/%E8%B4%9D%E5%B0%94%E6%9B%BC-%E7%A6%8F%E7%89%B9%E7%AE%97%E6%B3%95))在解释BF时都会提到它的基础或者核心是**松弛操作**。自然地,理解BF的关键也是理解这一点,所以下面就来专门讲讲它究竟是个什么意思。 “松弛”,翻译自英文的relaxation,原本指数学上的[一种迭代求解方程组的方法](http://goo.gl/MZNVwU),表示通过**改进**近似解来不断地**逼近**最终解或者说最优解的方法。而我们下面可以看到,BF正是这么一个迭代改进的过程。 岔开一笔,我不知道当初数学家们为什么要选用relaxation这个词,但我觉得它的字面意义正好与它所代表的实际过程相反(在BF中尤其如此)。更糟的是,数学中另有一个“松弛”的概念,使用的是同一个词。它表示的是[一种解决问题的技巧](http://goo.gl/71x1nt):如果问题难以解决,...
桥头堡2015 发布于 2年前 阅读 4090 评论 2 点赞 5
顶部