How would I go about building and hosting my own backend for an iOS application? The Ask Question Wizard is Live! Data science time! April 2019 and salary with experienceRealm database & user account dataRdbms one way sync with Realm Object Server possible?realm - best way to sync data on AzureWhich type of applications can I build with the Realm Mobile Platform?Hosting Firebase on your own serverRealm Swift: retrieve user, object not returned when launching appRealm swift with API callsHow much data should be stored in a single realm fileTell me any better way to sync Realm database with FirebaseBackend Database for iOS Production Applications

What do you call an IPA symbol that lacks a name (e.g. ɲ)?

Was Objective-C really a hindrance to Apple software development?

Are these square matrices always diagonalisable?

Was there ever a LEGO store in Miami International Airport?

Is it accepted to use working hours to read general interest books?

Will I be more secure with my own router behind my ISP's router?

In search of the origins of term censor, I hit a dead end stuck with the greek term, to censor, λογοκρίνω

Why does Java have support for time zone offsets with seconds precision?

Co-worker works way more than he should

Is there a verb for listening stealthily?

What's the difference between using dependency injection with a container and using a service locator?

What were wait-states, and why was it only an issue for PCs?

Feather, the Redeemed and Dire Fleet Daredevil

Eigenvalues of the Laplacian of the directed De Bruijn graph

Variable does not exist: sObjectType (Task.sObjectType)

Why do people think Winterfell crypts is the safest place for women, children & old people?

When I export an AI 300x60 art board it saves with bigger dimensions

Determinant of a matrix with 2 equal rows

Why did Israel vote against lifting the American embargo on Cuba?

When speaking, how do you change your mind mid-sentence?

How to compute a Jacobian using polar coordinates?

How would it unbalance gameplay to rule that Weapon Master allows for picking a fighting style?

Writing a T-SQL stored procedure to receive 4 numbers and insert them into a table

Arriving in Atlanta (after US Preclearance in Dublin). Will I go through TSA security in Atlanta to transfer to a connecting flight?



How would I go about building and hosting my own backend for an iOS application?



The Ask Question Wizard is Live!
Data science time! April 2019 and salary with experienceRealm database & user account dataRdbms one way sync with Realm Object Server possible?realm - best way to sync data on AzureWhich type of applications can I build with the Realm Mobile Platform?Hosting Firebase on your own serverRealm Swift: retrieve user, object not returned when launching appRealm swift with API callsHow much data should be stored in a single realm fileTell me any better way to sync Realm database with FirebaseBackend Database for iOS Production Applications



.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








0















As a preface: I want to do this as a learning exercise. I'm not trying to produce a commercially viable app.



What are the layers/abstractions of an iOS application that is connected to a custom, self hosted backend? What technologies are needed to build this stack?



This post has helped my understanding a bit. I'm currently using Firebase as my backend but have found its NoSQL structure wrong for my app. The data I'm storing is relational, so I think an SQL database storing JSON would work better. The data is modeling Vehicles shared between Users.
From my research, the Realm Platform looks like a good choice. Am I understanding the technologies correctly here? Does this sentence make sense?



General functionality:



  • Sign Up and Login of users

  • Upload/download vehicle data

  • Some server side logic

  • Pushing data updates to users in real time

So would the stack look like the following?



User Front End: iOS app written in Swift

Database: Realm Database (SQL)

Server: Realm Object Server



I'm really looking for an overview of the general architecture. I don't know anything about that, so I'm sure I have failed to provide many details that are necessary for a thorough answer.



I apologize if this question is redundant; most answers I've seen for similar questions typically end with "just use AWS, Firebase, etc".



Thanks!










share|improve this question
























  • Can also try your hand at Python's Flask for backend and use whatever database you want.. although it does come with SQLAlchemy..

    – Brandon
    Mar 22 at 15:02











  • Interesting i'll check it out! Thank you

    – Nick Rizzo
    Mar 22 at 15:20











  • There is a good and accepted answer but the question is a bit vague. The requirements could be handled by Firebase (which can handle relationships) or Realm's ROS. If you are rolling your own physical server, you need to take into account items such as maintenance, downtime, redundancy not to mention having the right hardware to support X users as well as connectivity, security etc. It can be a very expensive proposition as the weight of everything rests solely on you e.g. instead of spending time coding and upgrading your app, you have to spend the afternoon replacing a failing hard drive.

    – Jay
    Mar 22 at 16:01











  • I apologize for the vagueness; it's the result of my ignorance on the subject. :) I'm more interested in developing my understanding the tech stack than the efficiency of doing it all myself as opposed to using pre-existing solutions like Firebase. Though I'm using Firestore (relatively new Firebase db) and I'm finiding it to be a complete mismatch for my purposes. From my understanding, Firebase is a NoSQL database which is good for "unstructured, non-relational" data management. My data is structured, non-dynamic, and relational. Dev time thus far has been slow because of this mismatch.

    – Nick Rizzo
    Mar 22 at 16:16











  • Ah... Coming from a strong SQL background, I initially thought Firebase was a mismatch as well; I was totally wrong. There is the saying to use right tool for the job but understanding the tool gave me a different perspective. Initially, creating 'relationships' in NoSQL seemed like a total mismatch... however, once you understand how to approach data in a NoSQL way it gives you another tool in your toolbox; Firebase/FireStore is blisteringly fast and very expandable - I would suggest continuing with it. If you have a specific use case issue, be sure to post it here so we can take a look.

    – Jay
    Mar 23 at 13:55

















0















As a preface: I want to do this as a learning exercise. I'm not trying to produce a commercially viable app.



What are the layers/abstractions of an iOS application that is connected to a custom, self hosted backend? What technologies are needed to build this stack?



This post has helped my understanding a bit. I'm currently using Firebase as my backend but have found its NoSQL structure wrong for my app. The data I'm storing is relational, so I think an SQL database storing JSON would work better. The data is modeling Vehicles shared between Users.
From my research, the Realm Platform looks like a good choice. Am I understanding the technologies correctly here? Does this sentence make sense?



General functionality:



  • Sign Up and Login of users

  • Upload/download vehicle data

  • Some server side logic

  • Pushing data updates to users in real time

So would the stack look like the following?



User Front End: iOS app written in Swift

Database: Realm Database (SQL)

Server: Realm Object Server



I'm really looking for an overview of the general architecture. I don't know anything about that, so I'm sure I have failed to provide many details that are necessary for a thorough answer.



I apologize if this question is redundant; most answers I've seen for similar questions typically end with "just use AWS, Firebase, etc".



Thanks!










share|improve this question
























  • Can also try your hand at Python's Flask for backend and use whatever database you want.. although it does come with SQLAlchemy..

    – Brandon
    Mar 22 at 15:02











  • Interesting i'll check it out! Thank you

    – Nick Rizzo
    Mar 22 at 15:20











  • There is a good and accepted answer but the question is a bit vague. The requirements could be handled by Firebase (which can handle relationships) or Realm's ROS. If you are rolling your own physical server, you need to take into account items such as maintenance, downtime, redundancy not to mention having the right hardware to support X users as well as connectivity, security etc. It can be a very expensive proposition as the weight of everything rests solely on you e.g. instead of spending time coding and upgrading your app, you have to spend the afternoon replacing a failing hard drive.

    – Jay
    Mar 22 at 16:01











  • I apologize for the vagueness; it's the result of my ignorance on the subject. :) I'm more interested in developing my understanding the tech stack than the efficiency of doing it all myself as opposed to using pre-existing solutions like Firebase. Though I'm using Firestore (relatively new Firebase db) and I'm finiding it to be a complete mismatch for my purposes. From my understanding, Firebase is a NoSQL database which is good for "unstructured, non-relational" data management. My data is structured, non-dynamic, and relational. Dev time thus far has been slow because of this mismatch.

    – Nick Rizzo
    Mar 22 at 16:16











  • Ah... Coming from a strong SQL background, I initially thought Firebase was a mismatch as well; I was totally wrong. There is the saying to use right tool for the job but understanding the tool gave me a different perspective. Initially, creating 'relationships' in NoSQL seemed like a total mismatch... however, once you understand how to approach data in a NoSQL way it gives you another tool in your toolbox; Firebase/FireStore is blisteringly fast and very expandable - I would suggest continuing with it. If you have a specific use case issue, be sure to post it here so we can take a look.

    – Jay
    Mar 23 at 13:55













0












0








0








As a preface: I want to do this as a learning exercise. I'm not trying to produce a commercially viable app.



What are the layers/abstractions of an iOS application that is connected to a custom, self hosted backend? What technologies are needed to build this stack?



This post has helped my understanding a bit. I'm currently using Firebase as my backend but have found its NoSQL structure wrong for my app. The data I'm storing is relational, so I think an SQL database storing JSON would work better. The data is modeling Vehicles shared between Users.
From my research, the Realm Platform looks like a good choice. Am I understanding the technologies correctly here? Does this sentence make sense?



General functionality:



  • Sign Up and Login of users

  • Upload/download vehicle data

  • Some server side logic

  • Pushing data updates to users in real time

So would the stack look like the following?



User Front End: iOS app written in Swift

Database: Realm Database (SQL)

Server: Realm Object Server



I'm really looking for an overview of the general architecture. I don't know anything about that, so I'm sure I have failed to provide many details that are necessary for a thorough answer.



I apologize if this question is redundant; most answers I've seen for similar questions typically end with "just use AWS, Firebase, etc".



Thanks!










share|improve this question
















As a preface: I want to do this as a learning exercise. I'm not trying to produce a commercially viable app.



What are the layers/abstractions of an iOS application that is connected to a custom, self hosted backend? What technologies are needed to build this stack?



This post has helped my understanding a bit. I'm currently using Firebase as my backend but have found its NoSQL structure wrong for my app. The data I'm storing is relational, so I think an SQL database storing JSON would work better. The data is modeling Vehicles shared between Users.
From my research, the Realm Platform looks like a good choice. Am I understanding the technologies correctly here? Does this sentence make sense?



General functionality:



  • Sign Up and Login of users

  • Upload/download vehicle data

  • Some server side logic

  • Pushing data updates to users in real time

So would the stack look like the following?



User Front End: iOS app written in Swift

Database: Realm Database (SQL)

Server: Realm Object Server



I'm really looking for an overview of the general architecture. I don't know anything about that, so I'm sure I have failed to provide many details that are necessary for a thorough answer.



I apologize if this question is redundant; most answers I've seen for similar questions typically end with "just use AWS, Firebase, etc".



Thanks!







ios realm custom-backend






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Mar 22 at 15:03







Nick Rizzo

















asked Mar 22 at 14:56









Nick RizzoNick Rizzo

53




53












  • Can also try your hand at Python's Flask for backend and use whatever database you want.. although it does come with SQLAlchemy..

    – Brandon
    Mar 22 at 15:02











  • Interesting i'll check it out! Thank you

    – Nick Rizzo
    Mar 22 at 15:20











  • There is a good and accepted answer but the question is a bit vague. The requirements could be handled by Firebase (which can handle relationships) or Realm's ROS. If you are rolling your own physical server, you need to take into account items such as maintenance, downtime, redundancy not to mention having the right hardware to support X users as well as connectivity, security etc. It can be a very expensive proposition as the weight of everything rests solely on you e.g. instead of spending time coding and upgrading your app, you have to spend the afternoon replacing a failing hard drive.

    – Jay
    Mar 22 at 16:01











  • I apologize for the vagueness; it's the result of my ignorance on the subject. :) I'm more interested in developing my understanding the tech stack than the efficiency of doing it all myself as opposed to using pre-existing solutions like Firebase. Though I'm using Firestore (relatively new Firebase db) and I'm finiding it to be a complete mismatch for my purposes. From my understanding, Firebase is a NoSQL database which is good for "unstructured, non-relational" data management. My data is structured, non-dynamic, and relational. Dev time thus far has been slow because of this mismatch.

    – Nick Rizzo
    Mar 22 at 16:16











  • Ah... Coming from a strong SQL background, I initially thought Firebase was a mismatch as well; I was totally wrong. There is the saying to use right tool for the job but understanding the tool gave me a different perspective. Initially, creating 'relationships' in NoSQL seemed like a total mismatch... however, once you understand how to approach data in a NoSQL way it gives you another tool in your toolbox; Firebase/FireStore is blisteringly fast and very expandable - I would suggest continuing with it. If you have a specific use case issue, be sure to post it here so we can take a look.

    – Jay
    Mar 23 at 13:55

















  • Can also try your hand at Python's Flask for backend and use whatever database you want.. although it does come with SQLAlchemy..

    – Brandon
    Mar 22 at 15:02











  • Interesting i'll check it out! Thank you

    – Nick Rizzo
    Mar 22 at 15:20











  • There is a good and accepted answer but the question is a bit vague. The requirements could be handled by Firebase (which can handle relationships) or Realm's ROS. If you are rolling your own physical server, you need to take into account items such as maintenance, downtime, redundancy not to mention having the right hardware to support X users as well as connectivity, security etc. It can be a very expensive proposition as the weight of everything rests solely on you e.g. instead of spending time coding and upgrading your app, you have to spend the afternoon replacing a failing hard drive.

    – Jay
    Mar 22 at 16:01











  • I apologize for the vagueness; it's the result of my ignorance on the subject. :) I'm more interested in developing my understanding the tech stack than the efficiency of doing it all myself as opposed to using pre-existing solutions like Firebase. Though I'm using Firestore (relatively new Firebase db) and I'm finiding it to be a complete mismatch for my purposes. From my understanding, Firebase is a NoSQL database which is good for "unstructured, non-relational" data management. My data is structured, non-dynamic, and relational. Dev time thus far has been slow because of this mismatch.

    – Nick Rizzo
    Mar 22 at 16:16











  • Ah... Coming from a strong SQL background, I initially thought Firebase was a mismatch as well; I was totally wrong. There is the saying to use right tool for the job but understanding the tool gave me a different perspective. Initially, creating 'relationships' in NoSQL seemed like a total mismatch... however, once you understand how to approach data in a NoSQL way it gives you another tool in your toolbox; Firebase/FireStore is blisteringly fast and very expandable - I would suggest continuing with it. If you have a specific use case issue, be sure to post it here so we can take a look.

    – Jay
    Mar 23 at 13:55
















Can also try your hand at Python's Flask for backend and use whatever database you want.. although it does come with SQLAlchemy..

– Brandon
Mar 22 at 15:02





Can also try your hand at Python's Flask for backend and use whatever database you want.. although it does come with SQLAlchemy..

– Brandon
Mar 22 at 15:02













Interesting i'll check it out! Thank you

– Nick Rizzo
Mar 22 at 15:20





Interesting i'll check it out! Thank you

– Nick Rizzo
Mar 22 at 15:20













There is a good and accepted answer but the question is a bit vague. The requirements could be handled by Firebase (which can handle relationships) or Realm's ROS. If you are rolling your own physical server, you need to take into account items such as maintenance, downtime, redundancy not to mention having the right hardware to support X users as well as connectivity, security etc. It can be a very expensive proposition as the weight of everything rests solely on you e.g. instead of spending time coding and upgrading your app, you have to spend the afternoon replacing a failing hard drive.

– Jay
Mar 22 at 16:01





There is a good and accepted answer but the question is a bit vague. The requirements could be handled by Firebase (which can handle relationships) or Realm's ROS. If you are rolling your own physical server, you need to take into account items such as maintenance, downtime, redundancy not to mention having the right hardware to support X users as well as connectivity, security etc. It can be a very expensive proposition as the weight of everything rests solely on you e.g. instead of spending time coding and upgrading your app, you have to spend the afternoon replacing a failing hard drive.

– Jay
Mar 22 at 16:01













I apologize for the vagueness; it's the result of my ignorance on the subject. :) I'm more interested in developing my understanding the tech stack than the efficiency of doing it all myself as opposed to using pre-existing solutions like Firebase. Though I'm using Firestore (relatively new Firebase db) and I'm finiding it to be a complete mismatch for my purposes. From my understanding, Firebase is a NoSQL database which is good for "unstructured, non-relational" data management. My data is structured, non-dynamic, and relational. Dev time thus far has been slow because of this mismatch.

– Nick Rizzo
Mar 22 at 16:16





I apologize for the vagueness; it's the result of my ignorance on the subject. :) I'm more interested in developing my understanding the tech stack than the efficiency of doing it all myself as opposed to using pre-existing solutions like Firebase. Though I'm using Firestore (relatively new Firebase db) and I'm finiding it to be a complete mismatch for my purposes. From my understanding, Firebase is a NoSQL database which is good for "unstructured, non-relational" data management. My data is structured, non-dynamic, and relational. Dev time thus far has been slow because of this mismatch.

– Nick Rizzo
Mar 22 at 16:16













Ah... Coming from a strong SQL background, I initially thought Firebase was a mismatch as well; I was totally wrong. There is the saying to use right tool for the job but understanding the tool gave me a different perspective. Initially, creating 'relationships' in NoSQL seemed like a total mismatch... however, once you understand how to approach data in a NoSQL way it gives you another tool in your toolbox; Firebase/FireStore is blisteringly fast and very expandable - I would suggest continuing with it. If you have a specific use case issue, be sure to post it here so we can take a look.

– Jay
Mar 23 at 13:55





Ah... Coming from a strong SQL background, I initially thought Firebase was a mismatch as well; I was totally wrong. There is the saying to use right tool for the job but understanding the tool gave me a different perspective. Initially, creating 'relationships' in NoSQL seemed like a total mismatch... however, once you understand how to approach data in a NoSQL way it gives you another tool in your toolbox; Firebase/FireStore is blisteringly fast and very expandable - I would suggest continuing with it. If you have a specific use case issue, be sure to post it here so we can take a look.

– Jay
Mar 23 at 13:55












1 Answer
1






active

oldest

votes


















0














For a start you want to build your own backend and you should create your own API's that your IOS application will connect to. in short this is called REST api
https://www.sitepoint.com/developers-rest-api/



you will need to use many more technologies more than just a server like Apache



once you create your backend API you will need to connect it to the IOS app which can be done using NSURLSession builtin framework form Apple or Alamofire which is based on NSURLSession but its easer to use if you are learning



you will need to learn how to do an http/https request to understand how the request is made



check this
https://medium.com/@MuraliKathir/build-a-simple-api-search-with-alamofire-and-swiftyjson-80286e833315



Now to Realm. Realm is a local database that will be inside of your IOS app which helps you save data downloaded online or even user generated
https://realm.io/docs/swift/latest/#queries






share|improve this answer























  • Thanks for the quick response and the links! In terms of Realm (or any other DB), would I have 2 Realm databases, one on the server and then a local one on the iPhone? The server would have all of the data for everyone on the app while the local DB would have only data relevant and accessible to that specific user? Furthermore, I'm assuming that the server and the local databases don't both have to be Realm?

    – Nick Rizzo
    Mar 22 at 15:18












  • @NickRizzo yes they dont have to be the same as you said the server side can have mysql or any database and on the app you can bind the data and save it wherever you like. Realm can be used on server-side on both Linux and Windows via NodeJS and the Realm-JS API

    – Marchal
    Mar 22 at 15:26












  • Thanks so much! This is filling in a lot of the blanks for me.

    – Nick Rizzo
    Mar 22 at 15:37











Your Answer






StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");

StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);

else
createEditor();

);

function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);













draft saved

draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55302370%2fhow-would-i-go-about-building-and-hosting-my-own-backend-for-an-ios-application%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









0














For a start you want to build your own backend and you should create your own API's that your IOS application will connect to. in short this is called REST api
https://www.sitepoint.com/developers-rest-api/



you will need to use many more technologies more than just a server like Apache



once you create your backend API you will need to connect it to the IOS app which can be done using NSURLSession builtin framework form Apple or Alamofire which is based on NSURLSession but its easer to use if you are learning



you will need to learn how to do an http/https request to understand how the request is made



check this
https://medium.com/@MuraliKathir/build-a-simple-api-search-with-alamofire-and-swiftyjson-80286e833315



Now to Realm. Realm is a local database that will be inside of your IOS app which helps you save data downloaded online or even user generated
https://realm.io/docs/swift/latest/#queries






share|improve this answer























  • Thanks for the quick response and the links! In terms of Realm (or any other DB), would I have 2 Realm databases, one on the server and then a local one on the iPhone? The server would have all of the data for everyone on the app while the local DB would have only data relevant and accessible to that specific user? Furthermore, I'm assuming that the server and the local databases don't both have to be Realm?

    – Nick Rizzo
    Mar 22 at 15:18












  • @NickRizzo yes they dont have to be the same as you said the server side can have mysql or any database and on the app you can bind the data and save it wherever you like. Realm can be used on server-side on both Linux and Windows via NodeJS and the Realm-JS API

    – Marchal
    Mar 22 at 15:26












  • Thanks so much! This is filling in a lot of the blanks for me.

    – Nick Rizzo
    Mar 22 at 15:37















0














For a start you want to build your own backend and you should create your own API's that your IOS application will connect to. in short this is called REST api
https://www.sitepoint.com/developers-rest-api/



you will need to use many more technologies more than just a server like Apache



once you create your backend API you will need to connect it to the IOS app which can be done using NSURLSession builtin framework form Apple or Alamofire which is based on NSURLSession but its easer to use if you are learning



you will need to learn how to do an http/https request to understand how the request is made



check this
https://medium.com/@MuraliKathir/build-a-simple-api-search-with-alamofire-and-swiftyjson-80286e833315



Now to Realm. Realm is a local database that will be inside of your IOS app which helps you save data downloaded online or even user generated
https://realm.io/docs/swift/latest/#queries






share|improve this answer























  • Thanks for the quick response and the links! In terms of Realm (or any other DB), would I have 2 Realm databases, one on the server and then a local one on the iPhone? The server would have all of the data for everyone on the app while the local DB would have only data relevant and accessible to that specific user? Furthermore, I'm assuming that the server and the local databases don't both have to be Realm?

    – Nick Rizzo
    Mar 22 at 15:18












  • @NickRizzo yes they dont have to be the same as you said the server side can have mysql or any database and on the app you can bind the data and save it wherever you like. Realm can be used on server-side on both Linux and Windows via NodeJS and the Realm-JS API

    – Marchal
    Mar 22 at 15:26












  • Thanks so much! This is filling in a lot of the blanks for me.

    – Nick Rizzo
    Mar 22 at 15:37













0












0








0







For a start you want to build your own backend and you should create your own API's that your IOS application will connect to. in short this is called REST api
https://www.sitepoint.com/developers-rest-api/



you will need to use many more technologies more than just a server like Apache



once you create your backend API you will need to connect it to the IOS app which can be done using NSURLSession builtin framework form Apple or Alamofire which is based on NSURLSession but its easer to use if you are learning



you will need to learn how to do an http/https request to understand how the request is made



check this
https://medium.com/@MuraliKathir/build-a-simple-api-search-with-alamofire-and-swiftyjson-80286e833315



Now to Realm. Realm is a local database that will be inside of your IOS app which helps you save data downloaded online or even user generated
https://realm.io/docs/swift/latest/#queries






share|improve this answer













For a start you want to build your own backend and you should create your own API's that your IOS application will connect to. in short this is called REST api
https://www.sitepoint.com/developers-rest-api/



you will need to use many more technologies more than just a server like Apache



once you create your backend API you will need to connect it to the IOS app which can be done using NSURLSession builtin framework form Apple or Alamofire which is based on NSURLSession but its easer to use if you are learning



you will need to learn how to do an http/https request to understand how the request is made



check this
https://medium.com/@MuraliKathir/build-a-simple-api-search-with-alamofire-and-swiftyjson-80286e833315



Now to Realm. Realm is a local database that will be inside of your IOS app which helps you save data downloaded online or even user generated
https://realm.io/docs/swift/latest/#queries







share|improve this answer












share|improve this answer



share|improve this answer










answered Mar 22 at 15:08









MarchalMarchal

497




497












  • Thanks for the quick response and the links! In terms of Realm (or any other DB), would I have 2 Realm databases, one on the server and then a local one on the iPhone? The server would have all of the data for everyone on the app while the local DB would have only data relevant and accessible to that specific user? Furthermore, I'm assuming that the server and the local databases don't both have to be Realm?

    – Nick Rizzo
    Mar 22 at 15:18












  • @NickRizzo yes they dont have to be the same as you said the server side can have mysql or any database and on the app you can bind the data and save it wherever you like. Realm can be used on server-side on both Linux and Windows via NodeJS and the Realm-JS API

    – Marchal
    Mar 22 at 15:26












  • Thanks so much! This is filling in a lot of the blanks for me.

    – Nick Rizzo
    Mar 22 at 15:37

















  • Thanks for the quick response and the links! In terms of Realm (or any other DB), would I have 2 Realm databases, one on the server and then a local one on the iPhone? The server would have all of the data for everyone on the app while the local DB would have only data relevant and accessible to that specific user? Furthermore, I'm assuming that the server and the local databases don't both have to be Realm?

    – Nick Rizzo
    Mar 22 at 15:18












  • @NickRizzo yes they dont have to be the same as you said the server side can have mysql or any database and on the app you can bind the data and save it wherever you like. Realm can be used on server-side on both Linux and Windows via NodeJS and the Realm-JS API

    – Marchal
    Mar 22 at 15:26












  • Thanks so much! This is filling in a lot of the blanks for me.

    – Nick Rizzo
    Mar 22 at 15:37
















Thanks for the quick response and the links! In terms of Realm (or any other DB), would I have 2 Realm databases, one on the server and then a local one on the iPhone? The server would have all of the data for everyone on the app while the local DB would have only data relevant and accessible to that specific user? Furthermore, I'm assuming that the server and the local databases don't both have to be Realm?

– Nick Rizzo
Mar 22 at 15:18






Thanks for the quick response and the links! In terms of Realm (or any other DB), would I have 2 Realm databases, one on the server and then a local one on the iPhone? The server would have all of the data for everyone on the app while the local DB would have only data relevant and accessible to that specific user? Furthermore, I'm assuming that the server and the local databases don't both have to be Realm?

– Nick Rizzo
Mar 22 at 15:18














@NickRizzo yes they dont have to be the same as you said the server side can have mysql or any database and on the app you can bind the data and save it wherever you like. Realm can be used on server-side on both Linux and Windows via NodeJS and the Realm-JS API

– Marchal
Mar 22 at 15:26






@NickRizzo yes they dont have to be the same as you said the server side can have mysql or any database and on the app you can bind the data and save it wherever you like. Realm can be used on server-side on both Linux and Windows via NodeJS and the Realm-JS API

– Marchal
Mar 22 at 15:26














Thanks so much! This is filling in a lot of the blanks for me.

– Nick Rizzo
Mar 22 at 15:37





Thanks so much! This is filling in a lot of the blanks for me.

– Nick Rizzo
Mar 22 at 15:37



















draft saved

draft discarded
















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid


  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55302370%2fhow-would-i-go-about-building-and-hosting-my-own-backend-for-an-ios-application%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Kamusi Yaliyomo Aina za kamusi | Muundo wa kamusi | Faida za kamusi | Dhima ya picha katika kamusi | Marejeo | Tazama pia | Viungo vya nje | UrambazajiKuhusu kamusiGo-SwahiliWiki-KamusiKamusi ya Kiswahili na Kiingerezakuihariri na kuongeza habari

Swift 4 - func physicsWorld not invoked on collision? The Next CEO of Stack OverflowHow to call Objective-C code from Swift#ifdef replacement in the Swift language@selector() in Swift?#pragma mark in Swift?Swift for loop: for index, element in array?dispatch_after - GCD in Swift?Swift Beta performance: sorting arraysSplit a String into an array in Swift?The use of Swift 3 @objc inference in Swift 4 mode is deprecated?How to optimize UITableViewCell, because my UITableView lags

Access current req object everywhere in Node.js ExpressWhy are global variables considered bad practice? (node.js)Using req & res across functionsHow do I get the path to the current script with Node.js?What is Node.js' Connect, Express and “middleware”?Node.js w/ express error handling in callbackHow to access the GET parameters after “?” in Express?Modify Node.js req object parametersAccess “app” variable inside of ExpressJS/ConnectJS middleware?Node.js Express app - request objectAngular Http Module considered middleware?Session variables in ExpressJSAdd properties to the req object in expressjs with Typescript