1. OSGi Knowleage

2. OSGi.Net on Windows

3. OSGi with JAVA

4. OSGi with Qt and C++

5. Architecture of Gateway using EIP

5.1 EIP = Enterprise Integeration Patter

5.2 Refer to Spring Integration

5.3 Refer to Flume,Strom,Netty, MQ

5.4 Refer to SCADA and OPC Kepware

5.5 IoT Gateway

5.5.1  OSGi Runtime Platform

5.5.2  Adopte Plugin development

5.5.3  Modules

5.5.3.1 Device

5.5.3.1.1 Create Device

5.5.3.1.2 Select Device Driver

5.5.3.1.3 Device need a name, so it can be persistent

5.5.3.1.4 Need to know the relationship between Device name and its Driver ( present as plugin)

5.5.3.1.5 Need to save the configration of device

   5.5.3.2 Lightweight DB (plugin)

5.5.3.2.1 Save user name and password

5.5.3.2.2 Save general configuration of gateway, as key-pair placed in header. such as ID, Name,Location,LatiLogi

5.5.3.2.3 Save the devices created by user, its name, its driver, its driver configuration

5.5.3.2.4 Save log and value of realtime variables

5.5.3.3 Channle

5.5.3.3.1 Create Channle

5.5.3.3.2

5.5.3.3.2 Channle Exports its configuraiton and its ID, its description

5.5.3.3.3 Channle is able to save and read its configuration metadata from OSGi main plugin

5.5.3.3.4 Channle's thread number

5.5.3.3.5 Sync or Asyn

5.5.3.3.6 Log system

5.5.3.3.7 Filter, Intercepter

5.5.3.4 Variables

5.5.3.4.1 Define name

5.5.3.4.2 Select device, its value will be retrieved by driver of device.

5.5.3.4.3 The details of configuration, based on protocol of driver

5.5.3.4.3 Select Channle, its value will be got by its driver and send to its channle (using Executor.submit()),

5.5.3.4.4 Channle will be started as single thread or has thread pool, cache pool to save the value of varabile temporarly

5.5.3.4.5 Channle is responsible for send value of varable to corresponding receiver server, such as EMQ, socket server, http server, db server

5.5.3.4.6 Exception handling, Log

5.5.3.5 Driver as plugin

       5.5.3.5.1 Device Driver as plugin

5.5.3.5.2 Need name, UUID, description, version, author, supportive protocl as IDriverInfo

5.5.3.5.3 Configuration presention UI

5.5.3.5.4 The metadata of configuration for persistence as IDriverConfiguration

5.5.3.5.5 Special configuraiton, such as thread number, logger interface, cache pool size,  Exact-once, error handling, retry-times, timeout

5.5.3.5.6 Describe how to define a varible based on protocol, need Variable definition UI

5.5.3.5.7 The definition of variable for Driver will be save to DB

       5.5.3.6 Transceiver as plugin

5.5.3.6.1 Transceiver as plugin

5.5.3.6.2 Need name, ID,description, version,author

5.5.3.6.3 Configuration UI

5.5.3.6.4 The metadata of configuration for persistence

5.5.3.6.5

IoT Gateway Based on OSGi的更多相关文章

  1. 云中树莓派(2):将传感器数据上传到 AWS IoT 并利用Kibana进行展示

    云中树莓派(1):环境准备 云中树莓派(2):将传感器数据上传到AWS IoT 并利用Kibana进行展示 1. 传感器安装及配置 1.1 DHT22 安装 DHT22 是一款温度与湿度传感器,它有3 ...

  2. 基于Azure IoT开发.NET物联网应用系列-全新的Azure IoT架构

    物联网技术已经火了很多年了,业界各大厂商都有各自成熟的解决方案.我们公司主要搞新能源汽车充电,充电桩就是物联网技术的最大应用,车联网.物联网.互联网三网合一.2017年的时候重点研究过Azure Io ...

  3. FD.io社区中国行暨未来网络技术沙龙·南京站 会议小结

    What is FD.io VPP? FD.io VPP(Fast Data Input/Output Vector Packet Processing)is a new network multi- ...

  4. Smart internet of things services

    A method and apparatus enable Internet of Things (IoT) services based on a SMART IoT architecture by ...

  5. ASF (0) - ASF Java 项目总览

    Apache .NET Ant Library This is a library of Ant tasks that help developing .NET software. It includ ...

  6. JHipster生成微服务架构的应用栈(五)- 容器编排示例

    本系列文章演示如何用JHipster生成一个微服务架构风格的应用栈. 环境需求:安装好JHipster开发环境的CentOS 7.4(参考这里) 应用栈名称:appstack 认证微服务: uaa 业 ...

  7. Quick Guide to Microservices with Spring Boot 2.0, Eureka and Spring Cloud

    https://piotrminkowski.wordpress.com/2018/04/26/quick-guide-to-microservices-with-spring-boot-2-0-eu ...

  8. 读懂SAP Leonardo物联网平台

    读懂SAP Leonardo物联网平台 https://blog.csdn.net/weixin_42137700/article/details/81903290 本文比较系统.全面地介绍了SAP ...

  9. FD.io 社区中国行暨未来网络技术沙龙 南京站 参会小结

    FD.io 社区中国行暨未来网络技术沙龙 南京站,2018 年 3 月 17 日. 开场致辞 Ray 介绍了一些有的没的 ⁃ (Future Event)DPDK summit, FD.io summ ...

随机推荐

  1. Echarts【1、数据过多导致显示不全分页,2、数据展示探讨分析】

    var len=<c:out value="${len }"></c:out>; var dataZoom_end=null; //为空默认100%所以默认 ...

  2. Django环境搭建之hello world

    当我们想用Python来开发一个web应用时,首先要选择一个优秀的web框架,Django是个非常成熟的web开发框架,网上具有丰富的文档和学习资料,所以选择Django框架来入门web开发是个不错的 ...

  3. jedis 整合 Spring

    一,   单机版整合spring 1. 使用默认配置文件进行配置 <bean id="redisClient" class="redis.clients.jedis ...

  4. iterm自动登录ssh脚本

    经常在工作中需要切换到不同的服务器去部署,或者查看日志,每次登录都要去找对应的IP和地址,非常麻烦,最终决定使用iterm2+脚本来实现自动登录. 1.iterm2(下载安装不再介绍http://ww ...

  5. 【Kafka源码】Kafka代码模块

    Kafka源码依赖于Scala环境,首先需要安装scala,这块请自行百度进行安装. 传送门 当然,我们要分析源码,需要下载源码,请自行从github上面下载. 说明:本文使用的kafka版本为0.1 ...

  6. JavaScript设计模式-13.组合模式

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  7. FPGA加速:面向数据中心和云服务的探索和实践

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由columneditor 发表于云+社区专栏 作者介绍:章恒--腾讯云FPGA专家,目前在腾讯架构平台部负责FPGA云的研发工作,探索 ...

  8. SQL语句的增删改查(详细)

    摘录自:http://blog.csdn.net/a88055517/article/details/6736284 一.增:有2种方法 1.使用insert插入单行数据: 语法:insert [in ...

  9. 关于Hall定理的学习

    基本定义 \(Hall\) 定理是二分图匹配的相关定理 用于判断二分图是否存在完美匹配 存在完美匹配的二分图即满足最大匹配数为 \(min(|X|,|Y|)\) 的二分图,也就是至少有一边的点全部被匹 ...

  10. VFL子视图居中

    今天做UI用VFL适配在View上添加一个图片想让指定宽高的图片居中显示,我用下面的代码想着能实现可是出来的效果并没有居中. UIImageView *headView=[[UIImageView a ...