59ο DotNetZone event - Το Azure δεν είναι χορτοφάγο.
Το Azure είναι κατάλληλο:
- Για φτηνό Hosting
- Μόνο για startups
- Για περιστασιακή χρήση
- Να σηκώσει ολόκληρη την παραγωγή οποιασδήποτε επιχείρησης
Μόνο μία απάντηση είναι σωστή. Κι όμως, οι περισσότερες εισαγωγικές παρουσιάσεις για Azure δίνουν την αντίθετη εντύπωση, ακόμα και ότι για σοβαρές εγκαταστάσεις καλύτερες είναι ... Antagonistikes Υπηρεσίες.
Ξεκινώντας από ένα όχι και τόσο υποθετικό παράδειγμα, ενός online travel agency του ευρωπαϊκού Top ten, θα δούμε:
- Ποιες είναι οι ανάγκες μιας επιχείρησης
- Πως καλύπτονται από τις υπηρεσίες που παρέχει το Azure
- Πως συγκρίνεται το Azure με Antagonistikes Υπηρεσίες.
Φανταστείτε αν αντί να κοιτάτε τα logs ενός ecommerce site το βράδυ για να δείτε ότι κάποιος "τα σήκωσε", μπορούσατε να δείτε σε πραγματικό χρόνο τι συμβαίνει. Και με πιτάκια. Γιατί τα events δεν είναι μόνο για IoT
Parallel and Asynchronous Programming - ITProDevConnections 2012 (Greek)Panagiotis Kanavos
This document discusses parallel and asynchronous programming using the Task Parallel Library (TPL) in .NET. It covers how processors are getting smaller so parallelism is important. It provides examples of using TPL for data parallelism by partitioning work over collections and task parallelism by breaking work into steps. It also discusses asynchronous programming with async/await and how TPL handles cancellation, progress reporting, and synchronization contexts.
Pithos is an object storage service similar to Amazon S3 that is written in Python. It has clients for various platforms that communicate with its REST API based on the OpenStack Object Storage API. The Pithos client is a .NET application that synchronizes local folders to Pithos accounts. It handles file events asynchronously using multiple agents to avoid hanging, while efficiently hashing and uploading/downloading large files over unstable networks.
5 Steps to a Zero Trust Network - From Theory to PracticeAlgoSec
A Zero Trust network abolishes the quaint idea of a “trusted” internal network demarcated by a corporate perimeter. Instead it advocates microperimeters of control and visibility around the enterprise’s most sensitive data assets and the ways in which the enterprise uses its data to achieve its business objectives.
In this webinar, guest speaker John Kindervag, Vice President and Principal Analyst at Forrester Research, and Nimmy Reichenberg, VP of Strategy at AlgoSec will explain why a Zero Trust network should be the foundation of your security strategy, and present best practices to help companies achieve a Zero Trust state.
The webinar will cover:
• What is a Zero Trust network, and why it should be a core component of your threat detection and response strategy
• Turning theory into practice: Five steps to achieve Zero Trust information security
• How security policy management can help you define and enforce a Zero Trust network
QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"Daniel Bryant
All is not completely rosy in microservice-land. It is often a sign of an architectural approach’s maturity that in addition to the emergence of well established principles and practices, that anti-patterns also begin to be identified and classified. In this talk we introduce the 2016 edition of the seven deadly sins that if left unchecked could easily ruin your next microservices project... This talk will take a tour of some of the nastiest anti-patterns in microservices, giving you the tools to not only avoid but also slay these demons before they tie up your project in their own special brand of hell.
Topics covered include: Pride - selfishly ignoring the new requirements for testing; Envy - introducing inappropriate intimacy within services by creating a shared domain model; Wrath - failing to deal with the inevitable bad things that occur within a distributed system; Sloth - composing services in a lazy fashion, which ultimately leads to the creation of a “Distributed Monolith”; and Lust - embracing the latest and greatest technology without evaluating the operational impact incurred by these choices.
Φανταστείτε αν αντί να κοιτάτε τα logs ενός ecommerce site το βράδυ για να δείτε ότι κάποιος "τα σήκωσε", μπορούσατε να δείτε σε πραγματικό χρόνο τι συμβαίνει. Και με πιτάκια. Γιατί τα events δεν είναι μόνο για IoT
Parallel and Asynchronous Programming - ITProDevConnections 2012 (Greek)Panagiotis Kanavos
This document discusses parallel and asynchronous programming using the Task Parallel Library (TPL) in .NET. It covers how processors are getting smaller so parallelism is important. It provides examples of using TPL for data parallelism by partitioning work over collections and task parallelism by breaking work into steps. It also discusses asynchronous programming with async/await and how TPL handles cancellation, progress reporting, and synchronization contexts.
Pithos is an object storage service similar to Amazon S3 that is written in Python. It has clients for various platforms that communicate with its REST API based on the OpenStack Object Storage API. The Pithos client is a .NET application that synchronizes local folders to Pithos accounts. It handles file events asynchronously using multiple agents to avoid hanging, while efficiently hashing and uploading/downloading large files over unstable networks.
5 Steps to a Zero Trust Network - From Theory to PracticeAlgoSec
A Zero Trust network abolishes the quaint idea of a “trusted” internal network demarcated by a corporate perimeter. Instead it advocates microperimeters of control and visibility around the enterprise’s most sensitive data assets and the ways in which the enterprise uses its data to achieve its business objectives.
In this webinar, guest speaker John Kindervag, Vice President and Principal Analyst at Forrester Research, and Nimmy Reichenberg, VP of Strategy at AlgoSec will explain why a Zero Trust network should be the foundation of your security strategy, and present best practices to help companies achieve a Zero Trust state.
The webinar will cover:
• What is a Zero Trust network, and why it should be a core component of your threat detection and response strategy
• Turning theory into practice: Five steps to achieve Zero Trust information security
• How security policy management can help you define and enforce a Zero Trust network
QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"Daniel Bryant
All is not completely rosy in microservice-land. It is often a sign of an architectural approach’s maturity that in addition to the emergence of well established principles and practices, that anti-patterns also begin to be identified and classified. In this talk we introduce the 2016 edition of the seven deadly sins that if left unchecked could easily ruin your next microservices project... This talk will take a tour of some of the nastiest anti-patterns in microservices, giving you the tools to not only avoid but also slay these demons before they tie up your project in their own special brand of hell.
Topics covered include: Pride - selfishly ignoring the new requirements for testing; Envy - introducing inappropriate intimacy within services by creating a shared domain model; Wrath - failing to deal with the inevitable bad things that occur within a distributed system; Sloth - composing services in a lazy fashion, which ultimately leads to the creation of a “Distributed Monolith”; and Lust - embracing the latest and greatest technology without evaluating the operational impact incurred by these choices.
Μία περιεκτική εισαγωγή στo Rails framework γραμμένη εξ'ολοκλήρου στα ελληνικά.
Έκδοση 1.0,
12 Ιαν 2007
Δημητρακόπουλος Νικόλαος,
Άδεια Χρήσης Ελεύθερης Τεκμηρίωσης GNU
Στα πλαίσια του ACM Student Chapter του Πανεπιστημίου Πελοποννήσου και του Ruby Hellenic Users Group
Υπηρεσία Μίας Στάσης για την σύσταση επιχειρήσεων και ανοικτό λογισμικόTilemahos Manolatos
Σύσταση εταιρειών μέσω Υπηρεσίας Μιας Στάσης:
Η εμπειρία της χρήσης ανοικτού λογισμικού BPMN
Tηλέμαχος Μανωλάτος
Μηχανικός Η/Υ & Πληροφορικής, ΜΒΑ
R&D Manager
Knowledge Broadband Services AE
www.knowledge.gr
Τι είναι η Υπηρεσία Μιας Στάσης (ΥΜΣ)
Σκοπός, όφελος, ροή εργασιών
Σχετικά με την ΥΜΣ
Ίδρυση επιχειρήσεων με μια στάση (one stop shop)
Σημεία εξυπηρέτησης (one stop shops):
◦ Επιμελητήρια (58) για ΟΕ, ΕΕ
◦ Συμβολαιογράφοι (3000) για ΟΕ, ΕΕ, ΕΠΕ και ΑΕ
Διέπεται από την αντίστοιχη Κοινή Υπουργική Απόφαση (ΚΥΑ)
◦ ΥΠΟΙΚ, ΥΠΑΝ (ΓΓΕ), ΥΠΕΡΓ, ΥΠΔΙΚ
Διαχείριση από ΚΕΕΕ και ΓΓΕ
Η ΚΥΑ απλοποιεί την παλαιά διαδικασία, το BPMN την τυποποιεί, το software διασφαλίζει την τυποποίηση εκτέλεσης
Knowledge Broadband Services AE: Υλοποίηση της διαδικασίας & Ολοκλήρωση με 3ους φορείς
Ποιοι φορείς εμπλέκονται στην ίδρυση επιχείρησης;
Ποια η επίδραση της ΥΜΣ στους δείκτες του Παγκόσμιας Τράπεζας;
Μία στάση != Μία Μέρα
min: 20 λεπτά,
max: 14 εργάσιμες μέρες,
avg: 9.3 εργάσιμες μέρες
12(βαίνει μειούμενο) VS 19 ημερολογιακές μέρες
Θέση #50 σήμερα VS Θέση #146 πέρυσι
Που οφείλεται η βελτίωση;
Η προδιαγραφή (ΚΥΑ) και ο μηχανισμός υλοποίησης (BPMN)
Ήταν μόνο θέμα μοντελοποίησης και εκτέλεσης (BPMN);
Not-BPMN: Απαιτούμενη διασύνδεση με 3ες υπηρεσίες
ΟΑΕΕ
◦ Κλήση WS για την λήψη Ασφαλιστικής Ενημερότητας
ΓΓΠΣ
◦ Κλήση WS για την λήψη Φορολογικής Ενημερότητας
◦ Κλήση WS για τον έλεγχο ΑΦΜ (ταυτοπροσωπία)
◦ Κλήση WS για την λήψη ΑΦΜ της νέας επιχείρησης
◦ Κλήση WS για την απόδοση ΑΦΜ σε Αλλοδαπό ΝΠ – Ιδρυτή
ΓΕΜΗ
◦ Κλήση WS για την αναζήτηση επωνυμιών
◦ Κλήση WS για την προεγγραφή
◦ Κλήση WS για την εγγραφή (λήψη Αρ.ΓΕΜΗ)
Εκκρεμούν Εθνικό τυπογραφείο, ΙΚΑ, Επιμελητήρια (σήμερα με email/fax)
Not-BPMN: Κύκλωμα πληρωμών
Περιθώρια βελτίωσης
Ο μέσος χρόνος πλήρους διεκπεραίωσης θα μπορούσε να μειωθεί περισσότερο με:
◦ Web services με περισσότερα συστήματα (IKA, ET, Επιμελητήρια)
◦ Αλλά και με Βελτίωση Διαδικασίας (BPR)
Υπηρεσίες μιας Στάσης και ΕΛ/ΛΑΚ
Λειτουργικό Περιβάλλον
ΕΛ/ΛΑΚ:
◦ VM CentOS 6GB, στην ΜΟΔ:
Bonita 5.4.1
JRE6, Apache Tomcat 6, PostgreSQL 9
OpenOffice Headless (Server Mode)
100% Open Source
€0 license costs
Bonita Open Solution
www.bonitasoft.org
Τα δύο λογισμικά Bonita
1. Bonita Studio (GPL)
Μοντελοποίηση BPMN
Υλοποίηση οθονών χρήστη (RAD approach)
Υλοποίηση επιχειρησιακής λογικής με χρήση των Bonita off the
The Server-SIde Story: Παράλληλος και ασύγχρονος προγραμματισμός στο .NET - I...Panagiotis Kanavos
Πως διαφέρει ο παράλληλος και ασύγχρονος προγραμματισμός στο Server και ποιές τεχνολογίες του .NET μας επιτρέπουν να πετύχουμε μεγάλο throughput και να αποφύγουμε meltdowns?
1st StudentGuru Live Meeting | Imagine Cup 2011 | IT Challenge SupportAlexandros Sigaras
Presentation Slides from the 1st StudentGuru Live Meeting focused on the Imagine Cup 2011 IT Challenge competition
Video: https://vimeo.com/16566834
Presenters: Alexandros Sigaras, Iraklis Psaroudakis
Language: Greek
Micro Front-ends and Microservices Architecture in Web Application DevelopmentISSEL
Today, Web Development has left the static structure of monolithic code far behind and has adopted new architectures that allow interaction, more efficient and easy data management, tolerance of potential errors, easier code upgrade, etc. Two of these architectures are those of micro front-ends and microservices which aim to separate a page or application into smaller services for more efficient management of client requests and data. In this thesis, the advantages of these two architectures are studied and analyzed, as well as their patterns, which offer different advantages depending on the developer’s goal. The bibliography used to extract the information mostly consists of scientific research from the last decade (between 2011 and 2022), concerning different aspects and uses of microservices and micro front-ends. In addition, examples are provided from the implementation of two e-commerce applications that were created in the context of the diploma thesis in order to highlight the use of micro front-ends using JavaScript and REACT framework. Finally, disadvantages of the architectures are presented as well as conclusions for their implementation.
Η αρχιτεκτονική των Microservices και Micro Front-ends στην Ανάπτυξη Εφαρµογώ...ISSEL
Σήµερα, το Web Development έχει αφήσει κατά πολύ πίσω του την στατική δοµή του µονολιθικού κώδικα και έχει υιοθετήσει νέες αρχιτεκτονικές που επιτρέπουν την διάδραση, την πιο αποτελεσµατική και εύκολη διαχείριση δεδοµένων, την ανοχή σε δυνητικά σφάλµατα, την ευκολότερη αναβάθµιση του κώδικα, κ.α. ∆ύο από αυτές τις αρχιτεκτονικές είναι και αυτές των micro front-ends και microservices οι οποίες αποσκοπούν στον διαχωρισµό µίας σελίδας ή εφαρµογής σε µικρότερες υπηρεσίες για την αποτελεσµατικότερη διαχείριση των αιτηµάτων του client και την καλύτερη διαχείριση των δεδοµένων. Στην παρούσα διπλωµατική εργασία, µελετώνται και αναλύονται τα πλεονεκτήµατα των δύο αυτών αρχιτεκτονικών, καθώς επίσης και τα patterns αυτών, τα οποία προσφέρουν ξεχωριστά πλεονεκτήµατα ανάλογα µε τον στόχο του developer. Η ϐιβλιογραφία που χρησιµοποιήθηκε για την άντληση των πληροφοριών, απαρτίζεται ως επί το πλείστον από επιστηµονικές έρευνες της τελευταίας δεκαετίας (µεταξύ 2011 και 2022), που αφορούν διαφορετικές πτυχές και χρήσεις των microservices και micro front-ends. Επιπροσθέτως, παράθετονται παραδείγµατα από την υλοποίηση δύο e-commerce εφαρµογών που δηµιουργήθηκαν στα πλαίσια της διπλωµατικής εργασίας µε σκοπό την ανάδειξη της εϕαρµογής των micro front-ends µε τη χρήση JavaScript και REACT framework. Τέλος, παρουσιάζονται µειονεκτήµατα των αρχιτεκτονικών καθώς και συµπεράσµατα για την εϕαρµογή τους.
Συμβουλές για σωστό και αξιόπιστο Backup - TicTac Hybrid Backup SolutionTicTac Data Recovery
Μάθετε τι πρέπει να γνωρίζετε για ένα σωστό και ασφαλές backup για την επιχείρηση σας ή για τα προσωπικά σας δεδομένα, ούτως ώστε να είστε ασφαλείς, τόσο απο μηχανικές αστοχίες, ανθρώπινο λάθος ή επίθεση απο Ransomware.
Μια πλήρη παρουσίαση για το πώς πρέπει να σκεφτείτε να κάνετε το Backup σας με τον σωστό τρόπο.
Πώς μπορώ να έχω ασφαλές Backup;
Τι πρέπει να κάνω backup;
Ποιά λύση μπορεί να μου δώσει Backup αξιόπιστο και λειτουργικό;
Backup στο Cloud
Υβρυδικό Backup (Local Backup + Clound Backup)
Στο εργαστήριο της TicTac Data Recovery έχουμε δεί πάρα πολλά περιστατικά απώλειας δεδομένων. Οι βασικότερες αιτίες απώλειας είναι το ανθρώπινο λάθος και η βλάβη σε κάποιο σκληρό δίσκο. Τον τελευταίο καιρό βλέπουμε επίσης πολλά περιστατικά Ransomware.
TicTac Data Recovery: http://www.tictac.gr/
Blog για τις απειλές και την ασφάλεια: http://tictac.gr/blog
Ανάκτηση Δεδομένων απο χαλασμένο δίσκο: https://tictac.gr/vlaves-sklirou-diskou
Μία περιεκτική εισαγωγή στo Rails framework γραμμένη εξ'ολοκλήρου στα ελληνικά.
Έκδοση 1.0,
12 Ιαν 2007
Δημητρακόπουλος Νικόλαος,
Άδεια Χρήσης Ελεύθερης Τεκμηρίωσης GNU
Στα πλαίσια του ACM Student Chapter του Πανεπιστημίου Πελοποννήσου και του Ruby Hellenic Users Group
Υπηρεσία Μίας Στάσης για την σύσταση επιχειρήσεων και ανοικτό λογισμικόTilemahos Manolatos
Σύσταση εταιρειών μέσω Υπηρεσίας Μιας Στάσης:
Η εμπειρία της χρήσης ανοικτού λογισμικού BPMN
Tηλέμαχος Μανωλάτος
Μηχανικός Η/Υ & Πληροφορικής, ΜΒΑ
R&D Manager
Knowledge Broadband Services AE
www.knowledge.gr
Τι είναι η Υπηρεσία Μιας Στάσης (ΥΜΣ)
Σκοπός, όφελος, ροή εργασιών
Σχετικά με την ΥΜΣ
Ίδρυση επιχειρήσεων με μια στάση (one stop shop)
Σημεία εξυπηρέτησης (one stop shops):
◦ Επιμελητήρια (58) για ΟΕ, ΕΕ
◦ Συμβολαιογράφοι (3000) για ΟΕ, ΕΕ, ΕΠΕ και ΑΕ
Διέπεται από την αντίστοιχη Κοινή Υπουργική Απόφαση (ΚΥΑ)
◦ ΥΠΟΙΚ, ΥΠΑΝ (ΓΓΕ), ΥΠΕΡΓ, ΥΠΔΙΚ
Διαχείριση από ΚΕΕΕ και ΓΓΕ
Η ΚΥΑ απλοποιεί την παλαιά διαδικασία, το BPMN την τυποποιεί, το software διασφαλίζει την τυποποίηση εκτέλεσης
Knowledge Broadband Services AE: Υλοποίηση της διαδικασίας & Ολοκλήρωση με 3ους φορείς
Ποιοι φορείς εμπλέκονται στην ίδρυση επιχείρησης;
Ποια η επίδραση της ΥΜΣ στους δείκτες του Παγκόσμιας Τράπεζας;
Μία στάση != Μία Μέρα
min: 20 λεπτά,
max: 14 εργάσιμες μέρες,
avg: 9.3 εργάσιμες μέρες
12(βαίνει μειούμενο) VS 19 ημερολογιακές μέρες
Θέση #50 σήμερα VS Θέση #146 πέρυσι
Που οφείλεται η βελτίωση;
Η προδιαγραφή (ΚΥΑ) και ο μηχανισμός υλοποίησης (BPMN)
Ήταν μόνο θέμα μοντελοποίησης και εκτέλεσης (BPMN);
Not-BPMN: Απαιτούμενη διασύνδεση με 3ες υπηρεσίες
ΟΑΕΕ
◦ Κλήση WS για την λήψη Ασφαλιστικής Ενημερότητας
ΓΓΠΣ
◦ Κλήση WS για την λήψη Φορολογικής Ενημερότητας
◦ Κλήση WS για τον έλεγχο ΑΦΜ (ταυτοπροσωπία)
◦ Κλήση WS για την λήψη ΑΦΜ της νέας επιχείρησης
◦ Κλήση WS για την απόδοση ΑΦΜ σε Αλλοδαπό ΝΠ – Ιδρυτή
ΓΕΜΗ
◦ Κλήση WS για την αναζήτηση επωνυμιών
◦ Κλήση WS για την προεγγραφή
◦ Κλήση WS για την εγγραφή (λήψη Αρ.ΓΕΜΗ)
Εκκρεμούν Εθνικό τυπογραφείο, ΙΚΑ, Επιμελητήρια (σήμερα με email/fax)
Not-BPMN: Κύκλωμα πληρωμών
Περιθώρια βελτίωσης
Ο μέσος χρόνος πλήρους διεκπεραίωσης θα μπορούσε να μειωθεί περισσότερο με:
◦ Web services με περισσότερα συστήματα (IKA, ET, Επιμελητήρια)
◦ Αλλά και με Βελτίωση Διαδικασίας (BPR)
Υπηρεσίες μιας Στάσης και ΕΛ/ΛΑΚ
Λειτουργικό Περιβάλλον
ΕΛ/ΛΑΚ:
◦ VM CentOS 6GB, στην ΜΟΔ:
Bonita 5.4.1
JRE6, Apache Tomcat 6, PostgreSQL 9
OpenOffice Headless (Server Mode)
100% Open Source
€0 license costs
Bonita Open Solution
www.bonitasoft.org
Τα δύο λογισμικά Bonita
1. Bonita Studio (GPL)
Μοντελοποίηση BPMN
Υλοποίηση οθονών χρήστη (RAD approach)
Υλοποίηση επιχειρησιακής λογικής με χρήση των Bonita off the
The Server-SIde Story: Παράλληλος και ασύγχρονος προγραμματισμός στο .NET - I...Panagiotis Kanavos
Πως διαφέρει ο παράλληλος και ασύγχρονος προγραμματισμός στο Server και ποιές τεχνολογίες του .NET μας επιτρέπουν να πετύχουμε μεγάλο throughput και να αποφύγουμε meltdowns?
1st StudentGuru Live Meeting | Imagine Cup 2011 | IT Challenge SupportAlexandros Sigaras
Presentation Slides from the 1st StudentGuru Live Meeting focused on the Imagine Cup 2011 IT Challenge competition
Video: https://vimeo.com/16566834
Presenters: Alexandros Sigaras, Iraklis Psaroudakis
Language: Greek
Micro Front-ends and Microservices Architecture in Web Application DevelopmentISSEL
Today, Web Development has left the static structure of monolithic code far behind and has adopted new architectures that allow interaction, more efficient and easy data management, tolerance of potential errors, easier code upgrade, etc. Two of these architectures are those of micro front-ends and microservices which aim to separate a page or application into smaller services for more efficient management of client requests and data. In this thesis, the advantages of these two architectures are studied and analyzed, as well as their patterns, which offer different advantages depending on the developer’s goal. The bibliography used to extract the information mostly consists of scientific research from the last decade (between 2011 and 2022), concerning different aspects and uses of microservices and micro front-ends. In addition, examples are provided from the implementation of two e-commerce applications that were created in the context of the diploma thesis in order to highlight the use of micro front-ends using JavaScript and REACT framework. Finally, disadvantages of the architectures are presented as well as conclusions for their implementation.
Η αρχιτεκτονική των Microservices και Micro Front-ends στην Ανάπτυξη Εφαρµογώ...ISSEL
Σήµερα, το Web Development έχει αφήσει κατά πολύ πίσω του την στατική δοµή του µονολιθικού κώδικα και έχει υιοθετήσει νέες αρχιτεκτονικές που επιτρέπουν την διάδραση, την πιο αποτελεσµατική και εύκολη διαχείριση δεδοµένων, την ανοχή σε δυνητικά σφάλµατα, την ευκολότερη αναβάθµιση του κώδικα, κ.α. ∆ύο από αυτές τις αρχιτεκτονικές είναι και αυτές των micro front-ends και microservices οι οποίες αποσκοπούν στον διαχωρισµό µίας σελίδας ή εφαρµογής σε µικρότερες υπηρεσίες για την αποτελεσµατικότερη διαχείριση των αιτηµάτων του client και την καλύτερη διαχείριση των δεδοµένων. Στην παρούσα διπλωµατική εργασία, µελετώνται και αναλύονται τα πλεονεκτήµατα των δύο αυτών αρχιτεκτονικών, καθώς επίσης και τα patterns αυτών, τα οποία προσφέρουν ξεχωριστά πλεονεκτήµατα ανάλογα µε τον στόχο του developer. Η ϐιβλιογραφία που χρησιµοποιήθηκε για την άντληση των πληροφοριών, απαρτίζεται ως επί το πλείστον από επιστηµονικές έρευνες της τελευταίας δεκαετίας (µεταξύ 2011 και 2022), που αφορούν διαφορετικές πτυχές και χρήσεις των microservices και micro front-ends. Επιπροσθέτως, παράθετονται παραδείγµατα από την υλοποίηση δύο e-commerce εφαρµογών που δηµιουργήθηκαν στα πλαίσια της διπλωµατικής εργασίας µε σκοπό την ανάδειξη της εϕαρµογής των micro front-ends µε τη χρήση JavaScript και REACT framework. Τέλος, παρουσιάζονται µειονεκτήµατα των αρχιτεκτονικών καθώς και συµπεράσµατα για την εϕαρµογή τους.
Συμβουλές για σωστό και αξιόπιστο Backup - TicTac Hybrid Backup SolutionTicTac Data Recovery
Μάθετε τι πρέπει να γνωρίζετε για ένα σωστό και ασφαλές backup για την επιχείρηση σας ή για τα προσωπικά σας δεδομένα, ούτως ώστε να είστε ασφαλείς, τόσο απο μηχανικές αστοχίες, ανθρώπινο λάθος ή επίθεση απο Ransomware.
Μια πλήρη παρουσίαση για το πώς πρέπει να σκεφτείτε να κάνετε το Backup σας με τον σωστό τρόπο.
Πώς μπορώ να έχω ασφαλές Backup;
Τι πρέπει να κάνω backup;
Ποιά λύση μπορεί να μου δώσει Backup αξιόπιστο και λειτουργικό;
Backup στο Cloud
Υβρυδικό Backup (Local Backup + Clound Backup)
Στο εργαστήριο της TicTac Data Recovery έχουμε δεί πάρα πολλά περιστατικά απώλειας δεδομένων. Οι βασικότερες αιτίες απώλειας είναι το ανθρώπινο λάθος και η βλάβη σε κάποιο σκληρό δίσκο. Τον τελευταίο καιρό βλέπουμε επίσης πολλά περιστατικά Ransomware.
TicTac Data Recovery: http://www.tictac.gr/
Blog για τις απειλές και την ασφάλεια: http://tictac.gr/blog
Ανάκτηση Δεδομένων απο χαλασμένο δίσκο: https://tictac.gr/vlaves-sklirou-diskou
Το Azure δεν είναι χορτοφάγο! - 59ο DotNetZone Event
1. Το Azure Δεν είναι
χορτοφάγο
ΠΑΝΑΓΙΩΤΗΣ ΚΑΝΑΒΟΣ
DOTNETZONE MODERATOR
59ο DotNetZone Event
2. Το Azure είναι …
Φτηνό Hosting
Για startups
Για περιστασιακή χρήση
Για να στηρίξει mobile apps
Ικανό να σηκώσει ολόκληρη την παραγωγή μίας επιχείρησης
4. Online Travel Agency (Μεγάλο)
Ευρωπαϊκό Top 10, 3η στη Ρωσία
Εκατομμύρια αναζητήσεις/μέρα
Χιλιάδες πωλήσεις/μέρα
~ 5 Billion Events/year
Μερικά εκατομμύρια/μέρα
50+ servers
Δεκάδες εφαρμογές, services
Διάρκεια αναζήτησης: ~6 sec
10 sec = The china syndrome
5. Μία απλή αναζήτηση
Web Site Back End
GDS
ΑΤΗ – SKG
21/3 – 5/4
WS
Request
Search time 1-6sec
Response
100-300 results
2 MB
Parse
Trim junk
Price
Add extra info (punctuality, reliability)
Build out/return combinations
REST
call
Recommendations
Render
6. Μία απλή κράτηση
Web Site Back End
GDS
OA1234
Φουφουτόπο
υλος
Reservation
Request
Record reservation
Start cancellation timers
REST
call
Display
Reservation info
7. Μία απλή πληρωμή
Web Site Back End
GDS
OA1234 ..
Issue Ticket
Payment call
Display ticket info
Payment
Gateway
Πληρωμή με
πιστωτική
Approval code
CRM
8. Η Αρχιτεκτονική
Front end web sites
Ruby
ALT.NET κανείς ?
Αναζητήσεις, κρατήσεις πληρωμές
Πολλαπλά Backend services σε .ΝΕΤ
REST API
Integration με third parties
Mobile Apps
Background batch jobs
Ακυρώσεις
Ανανεώσεις κρατήσεων …
Όχι Microservices, Lots of services
9. Integration με τρίτους
GDS – Αυτοί που πουλάνε τα εισιτήρια
Ας πούμε Web Services
Βαρύ payload μπόλικο processing
Payment Gateways
Payments μέσω web services
Financial Reports σε οτιδήποτε (WS, flat files, screen scraping)
Αεροπορικές
Κυρίως financial
IATA
10. Η υποδομή
Front End Web Servers
Backend Services
Batch Jobs
CRM
Load Balancer
Redis Cluster
Couchbase Cluster MySQL
SQL Server
SNS
SQS
11. Οι προκλήσεις
Μεγάλος αριθμός αναζητήσεων
Ενδοεπικοινωνίες συστημάτων
End-to-End παρακολούθηση κράτησης
Συνεχής εξέλιξη
Ασταμάτητη αλλαγή
12. Γιατί Cloud;
Αξιοπιστία
Κι αν πλημμυρίσει το data center;
Κεραυνός στον ουδέτερο
Ατυχείς πρωτοβουλίες
Μακαρονάδα
Κι ας είναι ακριβότερο, είναι φθηνότερο
< 5 IT
20+ Developers
DevOps!
You build it, you deploy it
14. Ενδοεπικοινωνίες
Πολλά services
Από CRM μέχρι τρέχουσες ισοτιμίες
Αποφυγή tight coupling
Κι αν είναι κάτω;
Deployment
Fault
Meltdown
15. Ενδοεπικοινωνίες – Λύσεις
Publish/subscribe
Queued delivery
Συνήθως τα ίδια προϊόντα on premises
Διαφορετικές υπηρεσίες στο Cloud
Διαφορετικά lifetimes, persistence
16. Queues και Pub/Sub
Hosted Queues
Persistent
Rabbit MQ
In Memory
Zero MQ, Redis Lists και blocking
Και queueing και pub/sub στο ίδιο σύστημα
Χρειάζονται VMs
AMQP protocol – συμβατότητα με Azure
Service Bus
Εναλλαξιμότητα ?
Cloud Services
Pub/sub με Amazon SNS/Azure Service Bus
Καλό για microservices, REST APIs
Queueing με Amazon SQS/Azure Queues
Κόλλα και σπάγκος
Δεν χρειάζονται VMs
17. Πολλαπλά συστήματα
Best of breed
Managed ή VM;
Κόστος;
Διαθεσιμότητα;
Διαχείριση;
Κόστος αδειών (ακόμα και για open source)
18. Managed
Μικρότερο διαχειριστικό κοστος
Χωρίς άδειες
Διαθεσιμότητα
Scalable
Pay as you go
Ακριβότερο operation σε μεγάλη χρήση
SaaS για developers ?
19. VM deployment
Φθηνότερη χρήση σε αρκετές περιπτώσεις
Up front cost vs pay per use
Μπελάδες και πονοκέφαλοι
Κόστος διαχείρισης
Ευθύνη για availability, recovery
20. Πολλά VM
Πολλαπλά λειτουργικά
Linux
Windows
Καλύτερα βαρύτερο VM παρά πολλά μικρά
Azure Web Sites, Web Roles θέλουν το αντίθετο
Ανάγκη για
Αυτοματοποιημένο Deployment
Cross platform monitoring
Containers και Docker!
21. Docker ?
Application Isolation μέσα σε containers
Κάθε App βλέπει το δικό του περιβάλλον, hardware resources
Κάθε container μπορεί να κάνει reference άλλα containers
Περίπου σαν package dependencies
Εύκολο να κάνεις deploy πολλές εφαρμογές σε ένα VM
Δεν χρειάζεσαι ένα VM Image με-απ-όλα
Μα δεν το είχαμε αυτό στα mainframes του `80?
22. Πολύ processing
GDS responses ακόμα και 2 MB
Mainframe-style communications
Χεράτη διαχείριση συνδέσεων
Parsing, pricing
Πολύ CPU
Αποφυγή dumb processing όσο γίνεται
Οι γκάφες κοστίζουν
24. Server Meltdown - 1
Load Balanced φάρμα
Μεγάλος φόρτος
Πρώτος server κολλάει στα 100% CPU
Timeouts, App pool Recycle
Περισσότερα requests στους υπόλοιπους server
Ο δεύτερος server φτάνει 100%
Κάτσε κάτω από τη μπάρα!
…
25. Server Meltdown - 2
Το αυτόματο scale out *μπορεί* να βοηθήσει
Αν υπάρχει μεγάλος φόρτος
Μπορεί να βλάψει
Αν οφείλεται σε γκάφα
26. Ζέσταμα
Δεν αρκεί να σηκώσεις ένα VM ή Site
Ζέσταμα local cache
Άνοιγμα συνδέσεων με GDS, Databases
Μεγάλο CPU στο VM Αργή απάντηση network layers
Timeouts χωρίς καν σύνδεση
Network virtualization matters!
Amazon only issue?
27. Δεδομένα
Διαφορετικές ανάγκες
Μεγάλες και ακριβές αναζητήσεις, δεν σπάνε
Κρατήσεις, πληρωμές = κλασσικό OLTP
Reference data
Αεροδρόμια, Αεροπορικές, Προορισμοί
Logs και events
28. Δεδομένα – Λύσεις
Document databases
Memcache, Redis για reference δεδομένα, volatile data
Κλασσικό OLTP
29. Caching
Ακριβά searches
Αλλά και μεγάλα DTOs
Πολλά Reference data
Πολλοί servers/ clients
Μεγάλο traffic - > μεγάλο κόστος lookup
Συγχρονισμός μεταξύ servers
Μα πότε άλλαξε η τιμή;
30. End-to-End παρακολούθηση
Γίνεται και με Events, Logs
Όχι ό,τι ωραιότερο
Workflow
Απλουστεύει τον κώδικα και τα services
Διευκολύνει failure handling, timeouts, compensations
Orchestration μεν φτάνει να μην είναι βαρύ σαν συμφωνική ορχήστρα
Sagas αλα NServiceBus
Μάλλον το καλύτερο
Έξτρα framework
31. Deployment & Automation - 1
Windows Group Policies
Ένα λειτουργικό
Πολλά μηχανήματα
Drop-in deployments
Ανεξάρτητα πακέτα
Το αντίστροφο
Δεκάδες servers
Διακριτοί ρόλοι
Πολλαπλά βήματα
Αλληλεξαρτήσεις
Πολλά Λειτουργικά
Rollout waves
32. Deployment & Automation – Puppet,
Chef
H Microsoft λατρεύει τα Puppet και Chef!
Declarative ορισμός του configuration
VMs, services, accounts
Περιγραφή σε Ruby
Cross platform
Windows Specific
Octopus Deploy
33. Monitoring
Διαφορετικές μορφές
Admins want Performance Counters
Devs want Log records
Biz want business events
Different systems
34. Big data
>1 εκατομμύριο search τη μέρα
50000000000 events το χρόνο
Κάθε αναζήτηση, κράτηση προκαλεί πολλαπλά events
Logs σε κάθε βήμα
Ανάγκη για
Document DBs
Blob storage
Splunk για log processing
35. Internet of Things ?
Δεν είναι ένα app που μιλάει με ένα server
Χιλιάδες συσκευές χωρίς UI που στέλνουν συνέχεια events
«Μερικοί» servers που στέλνουν εκατοντάδες events το δευτερόλεπτο
38. Ενδοεπικοινωνίες – Βασική ιδέα
Κάθε “service” ορίζει ένα topic ή queue
Οι clients κάνουν post στο queue
Τα Azure Service Bus queues έχουν ένα subscriber
Topics – πολλοί subscribers
Azure Ta Storage Queues απαιτούν polling
Αλλά είναι πιο γρήγορα
Scale out με το μέγεθος του Queue
39. Ενδοεπικοινωνίες - Υπηρεσίες
Azure Service Bus Queues/Topics
Pub/Sub
256ΚΒ per message, 5 GB per topic, indefinite lifetime
Slower than Storage queues
AMQP συμβατό με άλλα queue services!
Δεν έχει retries
Azure Service Bus Relay
Επικοινωνία με on-premises! (λογιστήριο)
Azure Storage Queues
64KB per message, 7 days lifetime
Επιτρέπει retries
Γρηγορότερο
Κόστος?
Βγάλε άκρη
41. Azure SQL Database
Σχεδόν Enterprise στην V12 Preview (Premium)
Table Partitioning
Online Indexing
Columnstore Indexes
Τρέμε Redshift …. Ας πούμε
Γενικώς
Windowing functions
Change Tracking
500 GB max. Not quite IoT scale big data
Cloud only extras!
Row-level security
Data Masking
42. Azure SQL Database Scale Out
Elastic Scale
Sharding
NOT the same as clustering
I hear voices ….
43. Azure DocumentDB
Δεν είναι MongoDB δεν είναι RavenDB
Docs as Json objects
Fully indexed
Κατάλληλη για BI σενάρια
Αποθήκευση των «raw» events ως docs αντί να τα πετάμε
Νέα επεξεργασία όταν αλλάξουν οι απαιτήσεις/διαδικασίες
Όριο 512KB για την ώρα
Ακατάλληλο για search result caching (maybe)
Κατάλληλο για τις περισσότερες άλλες περιπτώσεις
44. Caching
Redis!
Recommended for all new development
In memory
Clustered
Rich types
Lists
Dictionaries
Atomic operations
Pub/sub μέσω blocking
Lua scripting
Transactions!
No persistence
45. Πολλαπλά συστήματα
Ποικιλία Linux
Docker στa Linux, έρχεται και για Windows
Κυρίως PaaS, όχι τόσα managed applications
Long running services μέσω
Worker Roles
Web Jobs
Ή πολλά services σε ένα VM?
46. Deployment
Step by step
Azure Automation
Powershell scripts
Worklflow
Συνεργάζεται με Puppet, Chef
Ώρα για ζέσταμα!
Declarative
Powershell DSC
Puppet/Chef
Τα θέλουμε και τα δύο
Cross platform
OneGet
Κλασσικό Package management
αλα rpm
47. Event Processing
Internet of Things Scale
Millions per second
Event Streams
Event Hubs
Κατάλληλο για Infrastructure monitoring
Χρησιμοποιείται από το εσωτερικό IT της Microsoft
48. Machine Learning
Ίσως το δυνατότερο προτέρημα
Machine Learning Studio
Hadoop
Python
R – η δημοφιλέστερη γλώσσα για στατιστικά
Εξαγορά της Revolution Analytics
Batch Processing μεγάλου όγκου
49. Night of the howling machines!
Models as REST services
REAL TIME!
Δένει με Event Processing
Recommendations
Fraud detection
Anomaly detection
Attack detection και αντιμετώπιση
50. Events & Machine Learning
Νι Χάο Πεν Γιου
Εντοπισμός ανώμαλων κλήσεων
Αναγνώριση
Αντιμετώπιση
Redirect σε άλλους server
Αλλαγή κανόνων σε load balancer, IP restrictions
51. Business Intelligence
Power BI μέσω Office 365
Hosted BI, reporting στο ίδιο σύννεφο
Άρα γλυτώνεις το bandwidth cost
Χωρίς πονοκεφάλους για πρόσβαση χρηστών, VPNs
52. Αγορά και αδειοδότηση
Pay as you go ή μπροστά
Ακόμα δεν έχει auctions (νομίζω)
Παίζει όμως ακόμα σε licensing πακέτα
Μπορείτε ακόμα να ζητήσετε έκπτωση
Και να πονοκεφαλιάσετε με το τι συμφέρει
54. Azure vs Amazon
Azure
Καλύτερο PaaS
Βάζει Docker
Το καλύτερο Docker για Windows
Managed Υπηρεσίες
Άριστο Integration με on-premises
Amazon
Καλύτερο IaaS
Έχει ήδη Docker
Όχι όμως για Windows
Managed Εφαρμογές
Έχει ήδη πολλά
On-Prem ?
55. Pub/Sub και Queues
Azure
Polled queues
Καλύτερο Pub/Sub
Service Bus - indefinite lifetime
Service Bus integration με on-premise
συστήματα
AMQP
χρήση διαφορετικών queues
Amazon
Polled queues
SNS κρατάει τα μηνύματα μέχρι 1 ώρα
Ανάγκη για Queue subscriptions και
polling
56. Full featured database
Γρήγορο insert σε columnstores
Δεν έχει clustering
Autoscale
Αλλά δεν είναι το ίδιο
SQL Database vs Redshift
SQL Database Redshift
Έχει clustering=Θέλει clustering
Ειδικευμένου σκοπού
Γρήγορο bulk insert
ΑΑΑΡΡΡΓΓΓΟΟΟ row-by-row
59. Workflows and Orchestration
Azure
Biztalk Services
Complex, Orchestration
Connectors and EDI, oh my!
Πληρωμή με την ώρα
Self-hosted Workflow Foundation
In-process ή AppFabric
Simple Workflow Service
Simple, workflow
Πληρωμή με την εκτέλεση, χρόνο
διατήρησης του record
Κάποια στιγμή πρέπει να σβηστεί
60. Αγορά
Azure
Ασκήσεις επί χάρτου
Και σε licensing πακέτα για on prem
Μπορείτε να ψήσετε τον account
manager
Πονοκεφάλιασμα με τα licenses
Amazon
Ασκήσεις επί χάρτου
Licensing? Τι’ν’τουτ?
Ο Account manager είναι στις
Μπαχάμες
Πονοκεφάλιασμα με τα auctions