Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
en:possible_integration_options_3_in_biostar_2 [2020/04/14 13:49]
yjjung [What is different from BioStar 2 Device SDK?]
en:possible_integration_options_3_in_biostar_2 [2020/04/29 08:27]
yjjung [Summary of G-SDK]
Line 1: Line 1:
-==== What is G-SDK==== +==== Possible Integration Option 3 : G-SDK ====  
-G-SDK is a new way of communicating with BioStar devices. It is a lightweightscalable, and cross-platform solution which will expedite your developmentBased on gRPC, it supports many programming languages such as Java, C#, Python, Node.js, Go, etc. +\\ 
- +In addition to the integration method using BioStar2 SW API or BioStar2 Device SDK, G-SDK is recently released as a new integration option for device managementuser management, and log management. \\
-==== G-SDK download link & Manual ==== +
-Download : https://​github.com/​biostar-dev/​g-sdk/ ​\\ +
-Manual : https://​biostar-dev.github.io/​g-sdk/​+
  
 +==== What is G-SDK? ====
 +G-SDK is one of the integration options for communicating with BioStar 2 devices. It is a lightweight,​ scalable, and cross-platform solution which will expedite your development. \\ 
 +\\
  
-==== G-SDK Overview ​==== +==== How G-SDK works? ​==== 
-G-SDK is one of integration options for communicating with BioStar 2 devices. It is a lightweight,​ scalable, ​and cross-platform solution which will expedite your development. \\  +{{:​en:​gsdk_gsdkarchitecture.png?​550|}} \\ 
-Based on gRPC, it supports many programming languages such as Java, C#, Python, Node.js, Go, etc. \\+** [Figure 1. G-SDK architecture] ** \\  
 +\\ 
 +G-SDK consists ​of Device Gateway in gRPC Server ​and gRPC Client Libraries. \\ 
 +Based on gRPC, it supports many programming languages such as Java, C#, Python, Node.js, Go, etc.\\ 
 +(gRPC (gRPC Remote Procedure Calls) is an open source remote procedure call (RPC) system initially developed at Google in 2015.) ​\\
 \\ \\
 ** Multi-language support ** ** Multi-language support **
   * Language-neutral IDL   * Language-neutral IDL
   * Native client libraries   * Native client libraries
 +\\
 +** Device Gateway ** that communicates with BioStar 2 device can be run on a server or cloud. ** Core modules ** use BioStar 2 protocols and written by GO language.\\
 +{{:​en:​gsdk_structure.png?​400|}} \\
 +** [Figure 2. Device Gateway Structure] ** \\ 
  
-** Mobile/​cloud ready ** 
-  * Easily deployable on Cloud 
-  * Accessible from mobile devices directly 
 \\ \\
  
 +==== What is different from BioStar 2 Device SDK? ====
 +Existing BioStar 2 Device SDK provides C++ library with C#. G-SDK is released to provide flexible development for those who would like to meet the requirements below. ​
 +
 +Let's take a look for an easy comparison between BioStar 2 Device SDK and G-SDK. \\
 +{{:​en:​gsdk_comparison.png?​600|}} \\
 +** [Figure 3. BioStar 2 Device SDK vs G-SDK] ** \\ 
 +\\
 +\\
 +One of the biggest advantages of G-SDK compare to Device SDK is that it supports various languages. For the last years, Device SDK users have had difficulty using development language other than C++ or C# which is in the sample code. \\
 +Since BioStar 2 Device SDK can communicate with C++ library, you have to use C++ language or need to marshall all the APIs and structures in the library into other languages. Currently BioStar 2 Device SDK provides only C# marshalling sample. \\
 +This is a limitation of BioStar 2 Device SDK due to the structure. \\
 +{{:​en:​gsdk_devicesdkstructure.png?​900|}} \\
 +** [Figure 4. BioStar 2 Device SDK structure] ** \\ 
 +
 +\\
 +
 +\\
 ''​How G-SDK can support so many languages?'' ​ \\ ''​How G-SDK can support so many languages?'' ​ \\
 It is because G-SDK is based on gRPC. gRPC is an open RPC framework that supports many languages developed by Google. \\ It is because G-SDK is based on gRPC. gRPC is an open RPC framework that supports many languages developed by Google. \\
 Basically, the device gateway is the one that communicates with BioStar 2 device. Your client applications can connect to it using gRPC client libraries.\\ Basically, the device gateway is the one that communicates with BioStar 2 device. Your client applications can connect to it using gRPC client libraries.\\
 \\ \\
-\\+ 
 +{{:​en:​gsdk_gsdkstructure.png?​900|}} \\ 
 +** [Figure 5. G-SDK structure] ** \\ 
 \\ \\
  
 +==== What are the next features? ====
 +\\
  
- +** 1. Master Gateway ** \\ 
-==== What is different from BioStar 2 Device ​SDK? ==== +G-SDK can support up to 1000 device connections with a Device ​gateway\\ 
-Existing BioStar 2 Device ​SDK provides C++ library with C#G-SDK is released to provide flexible ​development ​for those who would like to meet the requirements below.  +Currently, Master gateway that will support up to 100,000 device connections ​is under development. ​\\ 
- +Master Gateway helps you handle multiple ​Device ​gateways ​and it can be deployed on a cloud server or provide mobile direct accessibility too. \\ 
-Let's take a look for an easy comparison between BioStar 2 Device ​SDK and G-SDK. \\ +{{:en:gsdk_mastergateway.png?​600|}}\\ 
-{{:en:gsdk_comparison.png?600|}} \\ +** [Figure ​6. Device ​Gateway ​vs Master Gateway] ** \\ 
-** [Figure ​1BioStar 2 Device ​SDK vs G-SDK] ** \\ +
 \\ \\
  
-One of the biggest advantages of G-SDK compare to Device SDK is that it supports ​various languagesFor the last years, Device SDK users have had difficulty using development ​language ​other than C++ or C# which is in the sample code. \\+** 2. Advanced AC API ** \\ 
 +G-SDK doesn'​t support advanced AC such as Zone, Wiegand or RS485 but it supports ​only simple configurations & features\\ 
 +In the futureG-SDK will support all the APIs that are supported in the BioStar 2 Device SDK : Zone, Wiegand, RS485, etc. \\ 
 +\\ 
 +   
 +** 3. More language ​support samples ** \\ 
 +G-SDK provides ​C#, Java, Python, Go and Node samples. Furthermore,​ G-SDK is planning to support Android, iOS, Ruby samples. \\
 \\ \\
  
 +==== Summary of G-SDK ====
 +** Supported OS ** \\
 +Windows, x86/Arm Linux, Mac OS \\
 +\\
 +** Recommended Requirements **\\
 +2.0GHz CPU, 4GB(32bit) or 8GB(64bit) RAM  \\
 +\\
 +** Minimum Requirements **\\
 + ​1.0GHz CPU, 1GB(32bit) or 2GB(64bit) RAM\\
 +\\
 +** Maximum number of devices ** \\
 +Up to 1,000 \\
 +\\
 +** Supported Language ** \\
 +C++, Java, Python, Go, Ruby, C#, Node.js, Android Java, Objective-C,​ PHP, Web \\
 +\\
 +** Supported API ** \\
 +The basic AC APIs(Access control, User management, Event log etc) except advanced features such as Zone, Wiegand, RS485 features. \\
 +\\
 +** Supported Device ** \\
 +All BioStar 2 devices \\
 +\\
 +** Download ** \\
 +https://​github.com/​biostar-dev/​g-sdk/​ \\
 +\\
 +** Manual ** \\
 +https://​biostar-dev.github.io/​g-sdk/​\\
 +\\
 +\\