一、课程介绍

本次分享课程属于《C#高级编程实战技能开发宝典课程系列》中的一部分,阿笨后续会计划将实际项目中的一些比较实用的关于C#高级编程的技巧分享出来给大家进行学习,不断的收集、整理和完善此系列课程!

消息队列这个概念名称相比大家都不陌生!今天阿笨这里说的MQ并不是内存队列(Queue)和第三方MQ中间件(RabbitmQ、ActiveMQ等等),也不是第三方缓存组件( Memcached ,Redis ),这里的说的是内存映射文件消息队列(Memory-Mapped File MQ)。

阿笨总结一下我们实际项目中一般运用到队列(MQ)解决实际的场景问题如下:

1)、异步处理 ,解决简单的并发处理问题。

2)、 应用解耦,解决不同系统之间的数据交互问题。

1.1、本次分享课学完后我们要达到学习的目标和成果?

基于内存映射文件的特点,我们需要设计和实现了一个简单的消息队列,它消息可以持久化,并且可以实现跨程序的生产者/消费者通信,阿笨将带领大家学习这个消息队列的功能、用法、设计和实现代码。

1.2、一句话总结今天我们要解决的问题?

如何基于内存映射文件实现支持生产消费者模式、跨进程访问的持久化消息队列。

如果您同样对本次分享《C#内存映射文件消息队列实战演练(MMF MQ)》课程感兴趣的话,那么请跟着阿笨一起学习吧。

废话不多说,直接上干货,我们不生产干货,我们只是干货的搬运工。

二、概念名称含义解释

2.1、什么是虚拟内存盘?

2.2、什么是内存映射文件?

2.3、内存映射文件的特点?

2.4、内存映射文件应用场景?

2.5、什么是内存消息队列(Memory- MQ)?

2.6、什么是内存映射文件消息队列(Memory-Mapped File—MQ)?

2.7、C# MemoryMappedFile是什么?

三、C#内存映射文件消息队列实战演练

3.1、MMF 文件(File)写入/读取实战演练

                                                                            MMF 文件(File)写入/读取实战演练

3.2、MMF 消息队列(MQ)写入/读取实战演练

                                                                               MMF 消息队列(MQ)写入/读取实战演练

四、总结

希望学完本次分享课程后有所收获,真真做到学以致用并灵活的运用到实际项目当中去解决我们的业务问题。同时我们也要注意具体场景用什么技术,也千万不要一个技术吃遍所有的场景!

一切只讲理论知识不结合实战项目演练的技术分享课程都是耍流氓!

最后还是送大家一句话:师父领进门修行在个人,希望大家在学习的道路上一直坚持下去!

C#内存映射文件消息队列实战演练(MMF—MQ)的更多相关文章

  1. Java编程的逻辑 (61) - 内存映射文件及其应用 - 实现一个简单的消息队列

    本系列文章经补充和完善,已修订整理成书<Java编程的逻辑>,由机械工业出版社华章分社出版,于2018年1月上市热销,读者好评如潮!各大网店和书店有售,欢迎购买,京东自营链接:http:/ ...

  2. C# .Net 多进程同步 通信 共享内存 内存映射文件 Memory Mapped 转 VC中进程与进程之间共享内存 .net环境下跨进程、高频率读写数据 使用C#开发Android应用之WebApp 分布式事务之消息补偿解决方案

    C# .Net 多进程同步 通信 共享内存 内存映射文件 Memory Mapped 转 节点通信存在两种模型:共享内存(Shared memory)和消息传递(Messages passing). ...

  3. 使用内存映射文件MMF实现大数据量导出时的内存优化

    前言 导出功能几乎是所有应用系统必不可少功能,今天我们来谈一谈,如何使用内存映射文件MMF进行内存优化,本文重点介绍使用方法,相关原理可以参考文末的连接 实现 我们以单次导出一个excel举例(csv ...

  4. C# .Net 多进程同步 通信 共享内存 内存映射文件 Memory Mapped 转

    原文:C# .Net 多进程同步 通信 共享内存 内存映射文件 Memory Mapped 转 节点通信存在两种模型:共享内存(Shared memory)和消息传递(Messages passing ...

  5. C# .Net 多进程同步 通信 共享内存 内存映射文件 Memory Mapped

    节点通信存在两种模型:共享内存(Shared memory)和消息传递(Messages passing). 内存映射文件对于托管世界的开发人员来说似乎很陌生,但它确实已经是很远古的技术了,而且在操作 ...

  6. 内存映射文件(Memory-Mapped File)

    Java Memory-Mapped File所使用的内存分配在物理内存而不是JVM堆内存,且分配在OS内核. 1: 内存映射文件及其应用 - 实现一个简单的消息队列 / 计算机程序的思维逻辑 在一般 ...

  7. 内存映射文件MemoryMappedFile使用

    参考资料: http://blog.csdn.net/bitfan/article/details/4438458 所谓内存映射文件,其实就是在内存中开辟出一块存放数据的专用区域,这区域往往与硬盘上特 ...

  8. 第17章 内存映射文件(3)_稀疏文件(Sparse File)

    17.8 稀疏调拨的内存映射文件 17.8.1 稀疏文件简介 (1)稀疏文件(Sparse File):指的是文件中出现大量的0数据,这些数据对我们用处不大,但是却一样的占用空间.NTFS文件系统对此 ...

  9. MemoryMappedFile 内存映射文件 msdn

    http://msdn.microsoft.com/zh-cn/library/dd997372%28v=vs.110%29.aspx 内存映射文件 .NET Framework 4.5 其他版本 1 ...

随机推荐

  1. Redis常见操作命令

    1.库相关 select 索引 => 选择库 dbsize => 查询当前库中Key的数量 flushdb => 清空当前库 flushall => 清空所有库(建议不要用,除 ...

  2. thymeleaf:字符串拼接+输出单引号

    代码: <a href="#" th:onclick="${'removeArticleImg('''+cmsImg.imgID+''')'}">删 ...

  3. 重温CSS之基础

    在HTML中插入样式表: 内联式:直接在HTML标签中插入样式 <p style="color:red"></p> 2. 嵌入式: <style ty ...

  4. spring-web.xml 模板

    ssm模板 <?xml version="1.0" encoding="UTF-8"?>  <beans xmlns="http:/ ...

  5. Java 协变返回类型

    协变返回类型表示在导出类的被覆盖方法可以返回基类方法的返回类型的某种导出类型 //: polymorphism/covarianreturn.java package object; class Gr ...

  6. VS Code折腾记 - (4) 常用必备插件推荐【前端】

    前言 这篇文章只要让你做一些基础的配置,把vscode变得更加顺手: 插件的需求不是一成不变,有些插件我已经移除了..在最新的VSCODE 1.9.1中, 部分以前用插件实现的功能已经集成了,那就没有 ...

  7. vs2010 快捷键

    我自己的快捷键: visual studio 2010快捷键: visual studio 2010快捷键: 强迫智能感知:Ctrl+J撤销:Ctrl+Z强迫显示参数信息:Ctrl+Shift+空格重 ...

  8. Java string.valueof的用法以及与parseint的区别

    一.由基本数据型态转换成String String 类别中已经提供了将基本数据型态转换成 String 的 static 方法 ,也就是 String.valueOf() 这个参数多载的方法 有以下几 ...

  9. Java中static块执行时机

    Java中static块执行时机 演示例子 在使用static进行初始化的操作,怎么也执行不了!代码如下: public class StaticDemo { public static final ...

  10. 【翻译】What is State Machine Diagram(什么是状态机图)?

    [翻译]What is State Machine Diagram(什么是状态机图)? 写在前面 在上一篇学习类图的时候将这个网站上的类图的一篇文章翻译了出来,感觉受益良多,今天来学习UML状态机图, ...