首页
学习
活动
专区
工具
TVP
发布

让技术和时代并行

专栏作者
388
文章
433408
阅读量
30
订阅数
Thread和goroutine两种方式实现共享变量按序输出
最近在看go的一些底层实现,其中印象最为深刻的是go语言创造者之一Rob Pike说过的一句话,不要通过共享内存通信,而应该通过通信来共享内存,其中这后半句话对应的实现是通道(channel),利用通道在多个协程(goroutine)之间传递数据。看到这里,我不禁产生了一个疑问,对于无状态数据之间的传递,通过通道保证数据之间并发安全没什么问题,但我现在有一个临界区或者共享变量,存在多线程并发访问。Go协程如何控制数据并发安全性?难道还有其它高招?带着这个疑问,我们看看Go是如何保证临界区共享变量并发访问问题。
用户5166556
2020-09-15
7550
白话K8S核心组件概念
容器是利用了集装箱的思想,把可运行程序打包成可运行、自包含、标准化的镜像。通过K8S能够管理和编排我们打的镜像,举例来说,如果你想运行两个副本,直接在编排文件中配置replicas为2即可,你也可以使用HPA通过检测CPU、内存使用率实现自动扩缩容。
用户5166556
2020-08-20
7310
flannel跨主网络通信方案(UDP、VXLAN、HOST-GW)详解
坚持看下去,文末送机械键盘一个 本文中,笔者主要结合自己使用flannel心得,以及flannel的技术演进,介绍下flannel网络实现方案。在没有介绍flannel overlay网络实现方案之前,先回顾下docker网络实现方案。
用户5166556
2020-06-28
5.8K0
基于helm部署Kubernetes下的高可用redis
笔者用过 helm,它是Kubernetes下的包管理器,相当于apt-get、yum、brew这样的软件工具,用的是 helm(v2)版本,下面所介绍的 helm指的都是 v2 版本。通过使用 helm 解决了安装和部署复杂的 Kubernetes 应用,比如经常使用的 memecache、redis、MySQL。也解决过部分粉丝在用 helm 部署程序过程遇到一些问题,其中有几个粉丝一再建议我写一篇文章介绍下 helm,其实我是不想写的,究其原因有两点,第一、helm 官网和镜像仓库介绍非常详尽,当然安装也非常简单。第二、helm 如果想深入使用,必须搞明白 go 的模板语法,对于大多数用户来说,只是用来管理不同环境的编排文件,现在又要学一门模板语言,有一定的学习成本,所以就这点我是不太认可 helm 的。当然很多人会说,不如直接选择 Kubernetes 集成的 Kustomize,不用安装任何多余程序,即可完成不同环境应用配置和打包,但从本质上来说,helm 和 Kustomize 是有一定区别的,Kustomize 利用base+overlay的思想生成最终的描述文件,对原有yaml 编排文件不用怎么修改,即可无缝集成,使用上更简单。而 helm 则又分为仓库、helm 客户端、tiller 服务端,使用过程中,在底层定义模板,外层赋值。使用起来更复杂,但不可否认 helm 更强大,它不仅能够完成不同环境应用的打包和配置,更是对应用进行全生命周期的管理,比如查看历史部署版本、回退、升级等;另外支持应用程序的查找、以及应用程序依赖关系定制化等功能。之前介绍过 Kustomize 的使用,下文结合 redis-ha 安装部署介绍下 helm,使你对 Kustomize 和 helm 之间的功能点有一个更清楚的认识。
用户5166556
2020-06-19
2.4K0
Kubernetes入门培训
"本文主要从docker、docker-compose由浅到深介绍了Kubernetes核心功能,关注回复【ppt】获得演示文稿"
用户5166556
2020-06-15
5.9K139
K8S集群模式下fluent-bit日志收集方案设计和实践
「随着 K8s 不断更新迭代,使用 K8s 日志系统建设的开发者,逐渐遇到了各种复杂的问题和挑战。本篇文章中结合作者使用经验,分析和设计 K8s 日志收集实践过程。」
用户5166556
2020-06-07
3K0
Kubernetes中如何使用ClusterDNS进行服务发现?
“本文主要介绍了kubernetes网络结构、pod和service之间域名通信”
用户5166556
2020-01-23
1.2K0
hadoop搭建好后出现的format异常
14/07/10 18:50:47 FATAL conf.Configuration: error parsing conf file: com.sun.org                                                                                                                                                 .apache.xerces.internal.impl.io.MalformedByteSequenceException: 1 ▒ֽڵ▒ UTF-8 ▒▒▒е                                                                                                                                                 ▒▒ֽ▒ 1 ▒▒Ч▒▒ 14/07/10 18:50:47 ERROR namenode.NameNode: java.lang.RuntimeException: com.sun.o                                                                                                                                                 rg.apache.xerces.internal.impl.io.MalformedByteSequenceException: 1 ▒ֽڵ▒ UTF-8 ▒▒                                                                                                                                                 ▒е▒▒ֽ▒ 1 ▒▒Ч▒▒         at org.apache.hadoop.conf.Configuration.loadResource(Configuration.java:                                                                                                                                                 1243)         at org.apache.hadoop.conf.Configuration.loadResources(Configuration.java                                                                                                                                                 :1107)         at org.apache.hadoop.conf.Configuration.getProps(Configuration.java:1053                                                                                                                                                 )         at org.apache.hadoop.conf.Configuration.set(Configuration.java:420)         at org.apache.hadoop.hdfs.server.namenode.NameNode.setStartupOption(Name                                                                                                                                                 Node.java:1374)         at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNo    
用户5166556
2019-04-16
5090
用java程序把本地的一个文件拷贝到hdfs上并显示进度
把程序打成jar包放到Linux上 转到目录下执行命令 hadoop jar mapreducer.jar /home/clq/export/java/count.jar  hdfs://ubuntu:9000/out06/count/ 上面一个是本地文件,一个是上传hdfs位置
用户5166556
2019-04-16
1.6K0
could only be replicated to 0 nodes, instead of 1
出现 这种异常是因为数据冲突造成的,可以把通过日志查看,解决办法:删掉tmp文件夹下生成的dfs文件,重新format一下,问题解决。
用户5166556
2019-04-16
4620
没有更多了
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档