1
votes

I'm currently building a ruby calendaring application and we are debating whether I should leverage my existing office 365 service to create, store and retrieve calendar events located in shared mailboxes or store the data in a local database.

Nearly all the examples have seen use the O365 api's are to obtain an individual user mailbox information but not as a way of storing and accessing as a primary data source. I'd like to know if going down this path is worthwhile my pro's and con's below:

Pro's

  1. Saves DB storage and DB costs

  2. Saves design time building complex calendaring

Con's

  1. Service account(s) may hit O365 throttling limits?

  2. Adds dependency of requiring O365 operational

  3. Increased network traffic to retrieve calendar events

  4. Will likely affect website responsiveness?

More con's than pro's at this stage. So the question is as simple as:

Should I leverage office 365 as a primary data source for my calendaring application?

1

1 Answers

0
votes

I do not recommend using Office 365 as your data source. It would be a matter of time before you run into data integrity issues, network latency, account limits of API calls, etc.

Unless you're talking about a lot of records (billions), database impact should be minimal for a well designed application. For example, a calendar app I have running has a bit over 100,000 records and it consumes just over 36MB for the calendar data.

However, it wouldn't be a horrible idea depending on your situation to create a service to synchronize your calendar app to a third party.

Have a look at https://www.driftingruby.com/episodes/fullcalendar-events-and-scheduling to get started with building a calendar app. This screencast, personal site of mine, covers the basics of creating events, moving them and deleting them using unobtrusive javascript within your Rails application.