Icebound

icebound-area

Python实现并发的几种方式

工作中需要蛋疼的用python实现并发,在读文档+实践了很久之后,做个总结。注意,本文全是根据我实践中的理解来写的,并且尽量避开了实现细节以及我讨厌使用的asyncio.future和task。因为我觉得你搞并发的时候就应该像golang一样,尽量避免让开发者去搞那些奇怪的功能,而是专注于怎么轻松起一个协程,共享数据并且获得结果。

READ MORE →

联邦学习理解及实现

最近毕设要接触到联邦学习,在这里记录一下对联邦学习的理解,防止以后忘了。

机器学习小白一个,可能有错,欢迎指出!

READ MORE →

KubeEdge入门与实践

刚刚接触,所有信息来源于文档和实践,如有错误请直接指出!

首先说一个前提:KubeEdge有两个部分:CloudCore和EdgeCore。

KubeEdge Architecture
整体架构

CloudCore实际上是一个k8s的插件,采用非侵入式的方法部署在云端,完全兼容所有k8s的API。CloudCore会把边缘节点的状态做一个映射,以mock的方式反馈个k8s,这样k8s会有一个操作普通云节点的假象,也就能兼容API了。在云端,用户的操作会被K8S-Api服务器以RestFul形式发给EdgeController,再由CloudHub发送给在边缘的EdgeCore。云端还有一个重要的组件:DeviceController。其作用是以K8S CRD的方式对边缘设备进行建模,同时实现边缘设备信息同步(如DeviceTwin[1]的同步)。

READ MORE →

Linux常见问题排查

最近搞毕设遇到许多linux问题,在这里记录一下。

大概可以包括平常用到的各种指令、Ubuntu疑难排查,树莓派内核问题等。

READ MORE →

KubeEdge国内Ubuntu部署

KubeEdge及其依赖本身部署难度极低,国外各路大神都已经做好了一键脚本,不幸的是国内的网络环境极差,各种被墙,因此要手动做很多工作。

在部署开始前,请确保自己已经更换了apt的软件源为国内源。

具体来说,我的方法是首先用国内镜像弄好docker和K8s,然后装一个代理,最后通过代理加速直接安装KubeEdge。因为K8s和docker本身比较大,且国内镜像比较多。

READ MORE →