20:
83:. Despite their popularity in recent years, monolithic applications are still a good choice for applications with small team and little complexity. However, once it becomes too complex, you can consider refactoring it into microservices or a distributed application. Note that a monolithic application deployed on a single machine, may be performant enough for your current workload but it's less available, less durable, less changeable, less fine-tuned and less scalable than a well designed
398:
106:
In software engineering, a monolithic application describes a software application that is designed as a single service. Multiple services can be desirable in certain scenarios as it can facilitate maintenance by allowing repair or replacement of parts of the application without requiring wholesale
114:
approaches. Code-based modularity allows developers to reuse and repair parts of the application, but development tools are required to perform these maintenance functions (e.g. the application may need to be recompiled). Object-based modularity provides the application as a collection of separate
90:
The design philosophy is that the application is responsible not just for a particular task, but can perform every step needed to complete a particular function. Some personal finance applications are monolithic in the sense that they help the user carry out a complete task, end to end, and are
134:
In its original use, the term "monolithic" described enormous mainframe applications with no usable modularity. This, in combination with the rapid increase in computational power and therefore rapid increase in the complexity of the problems which could be tackled by software, resulted in
51:
which is self-contained and independent from other applications, but typically lacks flexibility. There are advantages and disadvantages of building applications in a
184:
Mishra, Mayank; Kunde, Shruti; Nambiar, Manoj (2018). "Cracking the monolith: Challenges in data transitioning to cloud native architectures".
439:
123:
files). Some object messaging capabilities allow object-based applications to be distributed across multiple computers (e.g. Microsoft's
305:
115:
executable files that may be independently maintained and replaced without redeploying the entire application (e.g. Microsoft's
59:, depending on requirements. Monolith applications are relatively simple and have a low cost but their shortcomings are lack of
233:
335:
468:
189:
262:
234:"Microservices vs. monolithic architecture: When monoliths grow too big it may be time to transition to microservices"
354:
286:
205:
432:
458:
128:
463:
60:
377:
425:
64:
413:
155:
124:
72:
302:
148:
84:
76:
56:
405:
186:
Proceedings of the 12th
European Conference on Software Architecture: Companion Proceedings
116:
48:
40:
8:
322:
160:
111:
100:
211:
282:
258:
201:
215:
193:
92:
19:
372:
309:
136:
409:
131:
use specific communication standards/protocols to communicate between modules.
96:
99:
are monolithic applications. These applications are sometimes associated with
95:
rather than parts of a larger system of applications that work together. Some
452:
120:
80:
197:
279:
Monolith to
Microservices Evolutionary Patterns to Transform Your Monolith
68:
32:
397:
52:
24:
336:"Cloud Adoption As A Part Of The Digital Transformation Journey"
151:
used for monolithic applications, each has its own trade-offs:
255:
Fundamentals of
Software Architecture: An Engineering Approach
28:
71:. Alternative styles to monolithic applications include
110:
Modularity is achieved to various extents by different
183:
450:
433:
23:Monolithic applications can be compared to
440:
426:
18:
371:
227:
225:
451:
365:
231:
352:
177:
392:
249:
247:
222:
190:Association for Computing Machinery
35:: a large single (mono) rock (lith)
13:
14:
480:
244:
396:
301:Information Technology Services
135:unmaintainable systems and the "
381:. Addison-Wesley Professional.
346:
328:
315:
295:
271:
129:Service-oriented architectures
1:
312:Retrieved on 28 November 2019
170:
412:. You can help Knowledge by
355:"dynamic link library (DLL)"
7:
378:The Art of Unix Programming
142:
10:
485:
469:Software engineering stubs
391:
325:Retrieved on 3 August 2007
232:Harris, Chandler (2022).
281:. O'Reilly Media. 2019.
257:. O'Reilly Media. 2020.
166:Microkernel architecture
198:10.1145/3241403.3241440
73:multitier architectures
16:Software design pattern
408:-related article is a
323:Three-tier Application
303:Monolithic Application
149:architectural patterns
125:Component Object Model
45:monolithic application
36:
459:Software architecture
192:(ACM). pp. 1–4.
188:. New York, NY, USA:
77:distributed computing
57:software architecture
22:
406:software-engineering
156:Layered architecture
117:Dynamic-link library
49:software application
47:is a single unified
41:software engineering
464:History of software
112:modular programming
101:mainframe computers
308:2007-09-02 at the
93:private data silos
85:distributed system
37:
421:
420:
476:
442:
435:
428:
400:
393:
383:
382:
373:Raymond, Eric S.
369:
363:
362:
353:Lutkevich, Ben.
350:
344:
343:
332:
326:
319:
313:
299:
293:
292:
275:
269:
268:
251:
242:
241:
229:
220:
219:
181:
147:Here are common
119:(DLL); Sun/UNIX
484:
483:
479:
478:
477:
475:
474:
473:
449:
448:
447:
446:
389:
387:
386:
370:
366:
351:
347:
342:. 2 March 2022.
334:
333:
329:
320:
316:
310:Wayback Machine
300:
296:
289:
277:
276:
272:
265:
253:
252:
245:
230:
223:
208:
182:
178:
173:
145:
137:software crisis
97:word processors
65:fault tolerance
17:
12:
11:
5:
482:
472:
471:
466:
461:
445:
444:
437:
430:
422:
419:
418:
401:
385:
384:
364:
359:techtarget.com
345:
327:
314:
294:
287:
270:
264:978-1492043454
263:
243:
221:
206:
175:
174:
172:
169:
168:
167:
164:
158:
144:
141:
15:
9:
6:
4:
3:
2:
481:
470:
467:
465:
462:
460:
457:
456:
454:
443:
438:
436:
431:
429:
424:
423:
417:
415:
411:
407:
402:
399:
395:
394:
390:
380:
379:
374:
368:
360:
356:
349:
341:
337:
331:
324:
318:
311:
307:
304:
298:
290:
288:9781492047810
284:
280:
274:
266:
260:
256:
250:
248:
239:
238:atlassian.com
235:
228:
226:
217:
213:
209:
207:9781450364836
203:
199:
195:
191:
187:
180:
176:
165:
162:
159:
157:
154:
153:
152:
150:
140:
138:
132:
130:
126:
122:
121:shared object
118:
113:
108:
107:replacement.
104:
102:
98:
94:
88:
86:
82:
81:microservices
78:
74:
70:
66:
62:
58:
54:
50:
46:
42:
34:
30:
26:
21:
414:expanding it
403:
388:
376:
367:
358:
348:
339:
330:
317:
297:
278:
273:
254:
237:
185:
179:
146:
133:
109:
105:
89:
44:
38:
340:kumaran.com
69:scalability
453:Categories
321:Microsoft
171:References
61:elasticity
53:monolithic
27:, such as
55:style of
33:Australia
25:monoliths
375:(2003).
306:Archived
216:52295004
163:monolith
143:Patterns
127:(COM)).
161:Modular
285:
261:
214:
204:
404:This
212:S2CID
29:Uluru
410:stub
283:ISBN
259:ISBN
202:ISBN
79:and
67:and
43:, a
194:doi
139:".
39:In
455::
357:.
338:.
246:^
236:.
224:^
210:.
200:.
103:.
87:.
75:,
63:,
31:,
441:e
434:t
427:v
416:.
361:.
291:.
267:.
240:.
218:.
196::
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.