Microservices in the Brightspace Cloud



Download 120.79 Kb.
Page1/7
Date21.06.2017
Size120.79 Kb.
  1   2   3   4   5   6   7

Microservices in the Brightspace Cloud

Contents



Microservices in the Brightspace Cloud


Contents

Microservices in the Brightspace Cloud 1

Document Change History 3

About microservices in the Brightspace Cloud 5

Microservices and on-premise clients 6

Microservices and data 6

Microservices architecture 7

Overview of released microservices 8

Authentication Service 10



1.A learner navigates to a tool that depends on the Authentication Service. 11

1.The Learning Management System (LMS) contacts the Authentication Service, provisions an Auth token (JSON Web Token) for the learner, and provides the Auth token to the tool/application. 11

2.While using the tool, JavaScript running in the learner’s browser can call secured D2L microservices directly, providing the Auth token during each request. 11

3.Microservices extract and authenticate the Auth token, then ensure that the caller is authorized to perform the requested operation before proceeding. 11

Brightspace Assignment Grader Transcoding Service 11



1.Brightspace Assignment Grader submits a file to the service. 12

4.The service converts the file and returns a link. 12

5.The file and associated data is deleted five days after the request is made. 12

Brightspace Binder Data Store 12



1.Brightspace Binder submits documents for storage in the Brightspace Binder data store. 12

6.At a later point in time, Brightspace Binder requests a document on behalf of a user. 12

7.An authentication check happens for the user. 13

8.The requested document is retrieved. 13

Caliper Gateway Service 13



1.A learner performs an action in a 3rd-party tool which triggers events. 13

9.The 3rd-party tool sends events to the Caliper Gateway Service. 13

10.The Caliper Gateway Service sends events to the Brightspace Data Platform. 13

Dates Service 14



1.When a learner uses Brightspace Pulse, an API request is made to retrieve date information, for example, scheduled exams. 15

11.The request is forwarded to the Dates Service. 15

12.If the data is stored in Brightspace Learning Environment, the data is retrieved using the Valence API. If the data is not stored in Brightspace Learning Environment, the data is retrieved from the Dates Service database. 15

13.The date information is then sent to the device. 16

Distributed Event Framework Service 16



1.User events are generated in Brightspace Learning Environment. 17

14.These events are then stored in the Main DB split. 17

15.The Telegraph Service pulls batches of events from the Main DB split and prepares to publish them to the Distributed Event Framework Service. 17

16.Before publishing events, the Telegraph Service must attach a TenantId to each event. It first looks for the TenantId in the Memcache (where a cached copy of the TenantId may be stored). If the TenantId is not there, it requests it from the Landlord Service. 17

17.The Landlord Service returns the unique TenantID to the Telegraph Service, which attaches the TenantId to each event and then publishes the events to the Distributed Event Framework Service. 17

18.The Distributed Event Framework Service processes the events for usage by other products/services. For example, the Distributed Event Framework Service streams events to the Brightspace Data Platform. 17

EduDentity Authentication Service 18



1.A separate solution verifies the credentials of a user with the service. The service authenticates the user and passes the results back to the calling solution. 18

19.Alternatively, a separate solution requests the security question of the service. The response is checked against the stored hashes. 19

Feed Service 19



1.When a learner uses Brightspace Pulse for the first time, their device is registered and a unique Device ID is assigned. 20

20.In Brightspace Learning Environment, events are generated that need to be sent to the Feed Service as push notifications, for example, an exam grade. 20

21.The event is stored in the Feed Service database. 20

22.The D2L Mobile Push Notification Service looks up the Device ID in the Mobile Push Notification Service Database to determine who the intended recipient is. 20

23.The D2L Mobile Push Notification Service sends the Device ID to the third party Push Notification Service (i.e. Apple, Google), which retrieves the event directly. 20

24.The 3rd party Push Notification Service sends a push notification to the device. No data is sent with the request, only a notice that information is available such as an exam grade. 20

Hypermedia Proxy Service 22

Landlord Service 22

LMS Discovery Service 24



1.From a device, a learner launches Brightspace Pulse for the first time and enters the name of their school. Brightspace Pulse contacts the LMS Discovery Service, which retrieves the Brightspace instance URL used by the school. 25

25.After entering the URL in Brightspace Pulse, the learner logs in, authenticating directly with the school’s Brightspace instance. 25

User Info Service 27



Microservices and the Brightspace Data Platform 27

1.User events are generated in Brightspace Learning Environment. For example, when a user logs in to the system, a Login Event is generated. 28

26.The Distributed Event Framework Service sends events to the Brightspace Data Platform. 28

27.Events are stored in Brightspace Data Platform (BDP) Storage. 28

28.The Brightspace Data Platform aggregates data, and stores the aggregated data in BDP Storage. For example, Login Events could be aggregated along hourly, daily, and weekly dimensions. 28

29.Aggregated data is sent to Brightspace Learning Environment in response to API requests. For example, API requests could be used to generate a report showing the Login Events generated for learners in a course. 29

About D2L 30





Download 120.79 Kb.

Share with your friends:
  1   2   3   4   5   6   7




The database is protected by copyright ©ininet.org 2020
send message

    Main page