青岛软件培训学校

山东最好的软件培训机构,专业培养高端IT人才 咨询热线:0532-85025005

[置顶] 青软人

(四十三)golang--管道

假设我们现在有这么一个需求:

计算1-200之间各个数的阶乘,并将每个结果保存在map中,最终显示出来,要求使用goroutine。

分析:

(1)使用goroutine完成,效率高,但是会出现并发/并行安全问题;

(2)不同协程之间如何通信;

对于(1):不同协程之间可能同时对一块内存进行操作,导致数据的混乱,即并发/并行不安全;主协程运行完了,计算阶乘的协程却没有运行完,功能并不能够准确实现;可利用互斥锁解决该问题;
对于(2):可以利用利用管道;
正常的代码:

复制代码
package main
...

微服务下,接口性能优化的一些总结

 如果是自己写的代码,加上又熟悉业务场景,很容易就知道性能瓶颈点。但如果上来就去优化别人的代码,甚至是其他产品线的代码,还是有一些挑战的。最近就在做这事,接手了优化公司一个业务引擎接口的任务,在这儿对优化方法做一些总结。

优化接口总共分两步,一是找到性能热点,二是解决热点。在不熟悉代码的情况下,找热点是最难的,找到后对症下药就容易多了。先主要说一下如何找性能热点。

...

Nginx+SpringBoot实现负载均衡

前言
在上一篇中介绍了Nginx的安装,本篇文章主要介绍的是Nginx如何实现负载均衡。

负载均衡介绍
介绍
在介绍Nginx的负载均衡实现之前,先简单的说下负载均衡的分类,主要分为硬件负载均衡和软件负载均衡,硬件负载均衡是使用专门的软件和硬件相结合的设备,设备商会提供完整成熟的解决方案,比如F5,在数据的稳定性以及安全性来说非常可靠,但是相比软件而言造价会更加昂贵;软件的负载均衡以Nginx这类软件为主,实现的一种消息队列分发机制。

简单来说所谓的负载均衡就是把很多请求进行分流,将他们分配到不同的服务器去处理。比如我有3个服务器,分别为A、B、C,然后使用Nginx进行负载均衡,使用轮询策略,此时如果收到了9个请求,那么会均匀的将这9个请求分发给A、B、Cf服务器,每一个服务器处理3个请求,这样的话我们可以利用多台机器集群的特性减少单个服务器的压力。
...

Few-shot Object Detection via Feature Reweighting (ICCV2019)

 论文:https://arxiv.org/abs/1812.01866

...

Redis 的底层数据结构(对象)

目前为止,我们介绍了 redis 中非常典型的五种数据结构,从 SDS 到 压缩列表,这都是 redis 最底层、最常用的数据结构,相信你也掌握的不错。

但 redis 实际存储键值对的时候,是基于对象这个基本单位的,并且往往一个对象下面对对应不同的底层数据结构实现以便于在不同的场景下切换底层实现提升效率。例如列表对象在元素不多情况话会使用压缩列表来实现以压缩内存,而在元素比较多的时候常规的双端链表进行实现。

下面我们就具体来看看 redis 中都有哪些对象,底层又对应哪些可供选择的数据结构。
...

Java类的定义与类的实例化

目录

Java类的定义与类的实例化
类的定义
定义一个简单的类
定义一个成员变量
定义一个方法
定义一个构造器
类的实例化
创建对象及使用对象:
创建对象的过程在内存中的表现
Java类的定义与类的实例化
类的定义
面向对象的程序设计中,类可以看作是我们自定义的数据类型,那么,如何能更加优美,更加高效地定义它就显得尤为重要。
类中的成员有很多,每一部分都是十分关键的,毕竟“面向对象”在Java学习中真的很重要,许许多多的Java开发者定义出来的类等待着我们去使用,加油!攻克它!

直接上代码:
...

一篇文章搞定Python多进程(全)

 

1.Python多进程模块

Python中的多进程是通过multiprocessing包来实现的,和多线程的threading.Thread差不多,它可以利用multiprocessing.Process对象来创建一个进程对象。这个进程对象的方法和线程对象的方法差不多也有start(), run(), join()等方法,其中有一个方法不同Thread线程对象中的守护线程方法是setDeamon,而Process进程对象的守护进程是通过设置daemon属性来完成的。

...

[FPGA]Verilog利用PWM调制完成RGB三色彩虹呼吸灯

概述
实现彩虹呼吸灯

题目就是这么简短,但这是目前我碰到的最有意思的一道题目,因为他有无数种解决方法,并且每一种都是那么高级或者巧妙,比如

可以利用3路不同初相的PWM调制信号驱动三颗RGB灯重叠呼吸
利用1路PWM信号以及状态机,将一个周期分为3个状态,分别是[R降G升B灭],[R灭,G降,B升]和[R升,G灭,B降],依次往复实现重叠呼吸
将PWM拆分为3段,分别为升,降,灭,在不同时间周期性的输送给RGB实现重叠呼吸
当然,不只这几种,还有更高级的方法或者生成语句也可以更加简练的完成题目,在这里,我将采取上面罗列的几种方法的一种折中方案,采取"拆分PWM","三元运算符实现单行条件信号分配","监视模块内运行情况并以监视信号作为状态转换的触发条件"来实现彩虹呼吸灯.
...

使用 Topshelf 组件一步一步创建 Windows 服务 (2) 使用Quartz.net 调度

 上一篇说了如何使用 Topshelf 组件快速创建Windows服务,接下来介绍如何使用 Quartz.net

...

Elasticsearch系列---全面了解Document

概要
本篇主要介绍一下document的知识,对document的元数据和基本的语法进行讲解。

document核心元数据
前面入门实战一节有简单介绍过document数据示例,这次我们来详细了解一下它的核心元数据,查询响应报文如下:

{
"_index": "music",
"_type": "children",
"_id": "1",
"_version": 1,
"found": true,
"_source": {
"name": "gymbo",
"content": "I hava a friend who loves smile, gymbo is his name",
...
分页:« 首页...«1[2][3][4][5][6][7][8][9][10][11][12][13][14]»...尾页 »

日历

Copyright 2007-2013 青岛软件培训学校(青岛市南京路122号中联广场B1栋3楼) 咨询热线:0532-85025005  鲁ICP备09077726号-3  
百度搜索|Google搜索 | 必应Bing | Yahoo搜索 | 搜狗搜索 | 有道搜索 | 搜搜 |