SlideShare uma empresa Scribd logo
1 de 24
Architecture of Professionals.az
Ziya Askerov
April 2013
www.professionals.az
CONTENT
 User Profile & (simple Company Profile)
 Messaging
 Jobs, Job Seekers, Job Posts
 Networking
 Advertisements
 Search Professionals
 News Feed
About
 Over 8000 registered users
 Based on Java Technologies
 Centos 5.5 OS with 1024 MB RAM (VPS)
 Only 1 Server
- Application Server
- MYSQL Database
- MailServer
- Subversion
Key Technologies
 JAVA
 JSP/SERVLET
 JBOSS , TOMCAT
 AJAX
 MYSQL
 JQUERY
 ORM
 SVN(SUBVERSION)
MVC ARCHITECTURE
Request Front Controller Servlet
VIEW MODEL
Listeners & Filters
Request
XSS
UTF-8
Filter for XSS (Cross-Site Scripting) and SQL Injection attack
CharacterSet filter
Session Listener
If is new
SOURSE
SESSION LISTENER
Object Relational Mapping
LESS NATIVE SQL
SECURITY
 SERVER SECURITY
 NETWORK SECURITY
 APPLICATION SERVER SECURITY
 APPLICATION SECURITY
Security Problems
 Cross-Site Scripting ATTACKS
 SOLUTION: Use filter
 Sql Injection ATTACKS
 SOLUTION: Use filter
 Cross-Site Request Forgery ATTACKS
 SOLUTION: Use token,session control
 Application Server ATTACKS
 Server ATTACKS
Server/Client side Validation
 Java Scrpit validation problems
 SOLUTION: Use server side validation
 Email, Url validation etc.
 SOLUTION: Use server side validation
 Double submissions
 SOLUTION: Use token
 Browsers compatibility
 SOLUTION: Use JavaScript framework (JQuery)
Exception Handling/Logging
Performance & Optimization
 Cashing
 Connection Pooling
 Application Server Tuning
 Java VM Tuning
 Image optimization
 Js, Css compression
SERVER.XML
DATASOURCE
WEB MANAGEMENT
SYSTEM
WEB MANAGEMENT
SYSTEM
PROJECT STRUCTURE
Migration to Groovy on Grails
 Build modern, sophisticated and robust
Groovy web applications in record time!
 Grails brings back the enjoyment of Java
web development.
Why GRAILS ?
 Rapid Have your next Web project done in weeks instead of months. Grails
delivers a new age of Java web application productivity.
 Dynamic Get instant feedback, see instant results. Grails is the premier
dynamic language web framework for the JVM.
 Robust Powered by Spring and designed for the JVM, Grails outperforms
the competition. Dynamic, agile web development without compromises.
Architecture of Grails
Why GRAILS ?
 Based on battle tested and proven Java frameworks (Spring, Hibernate,
SiteMesh, Quartz, etc)
 Based on Groovy language
 GORM(Grails Object Relational Mapping)
 Doesn’t stop you from using the power of underlying frameworks
 Easy to set-up and get started
 Minimal server restart required while development
 Convention over Configuration / No painful XML configuration & XML
Management
 Tag Lib Authoring mechanism
 Tons of available plugins
COMPANIES USING GRAILS
“Groovy is so much quicker and simpler to write code with, so
we can get applications up and running faster,” Mullen
confirms. “With Groovy and Grails we can create a new feature
in a week, when before it could easily take a month or more.”
Dinlədiyiniz üçün təşəkkür
edirəm !
Ziya ASKEROV
ziyaaskerov@gmail.com
Aprel 2013
Ziya ASKEROV
ziyaaskerov@gmail.com
Aprel 2013

Mais conteúdo relacionado

Mais procurados

Everything you always wanted to know about API Management (but were afraid to...
Everything you always wanted to know about API Management (but were afraid to...Everything you always wanted to know about API Management (but were afraid to...
Everything you always wanted to know about API Management (but were afraid to...Massimo Bonanni
 
Microservices with MSF4J - WSO2 Meetup
Microservices with MSF4J - WSO2 MeetupMicroservices with MSF4J - WSO2 Meetup
Microservices with MSF4J - WSO2 MeetupAfkham Azeez
 
Microsoft asp.net identity security
Microsoft asp.net identity  securityMicrosoft asp.net identity  security
Microsoft asp.net identity securityrustd
 
WSO2ConUS 2015 - Introduction to WSO2 Microservices Server (MSS)
WSO2ConUS 2015 - Introduction to WSO2 Microservices Server (MSS)WSO2ConUS 2015 - Introduction to WSO2 Microservices Server (MSS)
WSO2ConUS 2015 - Introduction to WSO2 Microservices Server (MSS)Afkham Azeez
 
Windows server app fabric pdc 2010
Windows server app fabric   pdc 2010Windows server app fabric   pdc 2010
Windows server app fabric pdc 2010Hammad Rajjoub
 
Introduction to WSO2 Microservices Framework for Java - MSF4J - WSO2Con Asia ...
Introduction to WSO2 Microservices Framework for Java - MSF4J - WSO2Con Asia ...Introduction to WSO2 Microservices Framework for Java - MSF4J - WSO2Con Asia ...
Introduction to WSO2 Microservices Framework for Java - MSF4J - WSO2Con Asia ...Afkham Azeez
 
Modern Management for Identiteter og Enheter – Azure AD, Intune og Windows 10
Modern Management for Identiteter og Enheter – Azure AD, Intune og Windows 10Modern Management for Identiteter og Enheter – Azure AD, Intune og Windows 10
Modern Management for Identiteter og Enheter – Azure AD, Intune og Windows 10MVP Dagen
 
Host, deploy & scale Blazor Server Apps
Host, deploy & scale Blazor Server AppsHost, deploy & scale Blazor Server Apps
Host, deploy & scale Blazor Server AppsJose Javier Columbie
 
ASP.Net Core Deep Dive into MVC
ASP.Net Core Deep Dive into MVCASP.Net Core Deep Dive into MVC
ASP.Net Core Deep Dive into MVCPritam Baldota
 
Lagom framework
Lagom frameworkLagom framework
Lagom framework명주 김
 
Full stack development tools & technologies
Full stack development tools & technologiesFull stack development tools & technologies
Full stack development tools & technologieskumar satyam
 
Token Authentication in ASP.NET Core
Token Authentication in ASP.NET CoreToken Authentication in ASP.NET Core
Token Authentication in ASP.NET CoreStormpath
 
MongoDB World 2019: MongoDB Atlas Security 101 for Developers
MongoDB World 2019: MongoDB Atlas Security 101 for DevelopersMongoDB World 2019: MongoDB Atlas Security 101 for Developers
MongoDB World 2019: MongoDB Atlas Security 101 for DevelopersMongoDB
 
WSO2Con EU 2015: Understanding the API Management Platform
WSO2Con EU 2015: Understanding the API Management PlatformWSO2Con EU 2015: Understanding the API Management Platform
WSO2Con EU 2015: Understanding the API Management PlatformWSO2
 
Locker Service Ready Lightning Components With Webpack
Locker Service Ready Lightning Components With WebpackLocker Service Ready Lightning Components With Webpack
Locker Service Ready Lightning Components With WebpackSalesforce Engineering
 
Design and Configure Azure App Service Web Apps
Design and Configure Azure App Service Web AppsDesign and Configure Azure App Service Web Apps
Design and Configure Azure App Service Web AppsRoy Kim
 
Secret Management with Hashicorp Vault and Consul on Kubernetes
Secret Management with Hashicorp Vault and Consul on KubernetesSecret Management with Hashicorp Vault and Consul on Kubernetes
Secret Management with Hashicorp Vault and Consul on KubernetesAn Nguyen
 

Mais procurados (20)

Everything you always wanted to know about API Management (but were afraid to...
Everything you always wanted to know about API Management (but were afraid to...Everything you always wanted to know about API Management (but were afraid to...
Everything you always wanted to know about API Management (but were afraid to...
 
Microservices with MSF4J - WSO2 Meetup
Microservices with MSF4J - WSO2 MeetupMicroservices with MSF4J - WSO2 Meetup
Microservices with MSF4J - WSO2 Meetup
 
Microsoft asp.net identity security
Microsoft asp.net identity  securityMicrosoft asp.net identity  security
Microsoft asp.net identity security
 
WSO2ConUS 2015 - Introduction to WSO2 Microservices Server (MSS)
WSO2ConUS 2015 - Introduction to WSO2 Microservices Server (MSS)WSO2ConUS 2015 - Introduction to WSO2 Microservices Server (MSS)
WSO2ConUS 2015 - Introduction to WSO2 Microservices Server (MSS)
 
Windows server app fabric pdc 2010
Windows server app fabric   pdc 2010Windows server app fabric   pdc 2010
Windows server app fabric pdc 2010
 
Introduction to WSO2 Microservices Framework for Java - MSF4J - WSO2Con Asia ...
Introduction to WSO2 Microservices Framework for Java - MSF4J - WSO2Con Asia ...Introduction to WSO2 Microservices Framework for Java - MSF4J - WSO2Con Asia ...
Introduction to WSO2 Microservices Framework for Java - MSF4J - WSO2Con Asia ...
 
Modern Management for Identiteter og Enheter – Azure AD, Intune og Windows 10
Modern Management for Identiteter og Enheter – Azure AD, Intune og Windows 10Modern Management for Identiteter og Enheter – Azure AD, Intune og Windows 10
Modern Management for Identiteter og Enheter – Azure AD, Intune og Windows 10
 
Host, deploy & scale Blazor Server Apps
Host, deploy & scale Blazor Server AppsHost, deploy & scale Blazor Server Apps
Host, deploy & scale Blazor Server Apps
 
ASP.Net Core Deep Dive into MVC
ASP.Net Core Deep Dive into MVCASP.Net Core Deep Dive into MVC
ASP.Net Core Deep Dive into MVC
 
Lagom framework
Lagom frameworkLagom framework
Lagom framework
 
Full stack development tools & technologies
Full stack development tools & technologiesFull stack development tools & technologies
Full stack development tools & technologies
 
Token Authentication in ASP.NET Core
Token Authentication in ASP.NET CoreToken Authentication in ASP.NET Core
Token Authentication in ASP.NET Core
 
MongoDB World 2019: MongoDB Atlas Security 101 for Developers
MongoDB World 2019: MongoDB Atlas Security 101 for DevelopersMongoDB World 2019: MongoDB Atlas Security 101 for Developers
MongoDB World 2019: MongoDB Atlas Security 101 for Developers
 
WSO2Con EU 2015: Understanding the API Management Platform
WSO2Con EU 2015: Understanding the API Management PlatformWSO2Con EU 2015: Understanding the API Management Platform
WSO2Con EU 2015: Understanding the API Management Platform
 
CAS IU Presentation
CAS IU PresentationCAS IU Presentation
CAS IU Presentation
 
Locker Service Ready Lightning Components With Webpack
Locker Service Ready Lightning Components With WebpackLocker Service Ready Lightning Components With Webpack
Locker Service Ready Lightning Components With Webpack
 
Mini-Training Owin Katana
Mini-Training Owin KatanaMini-Training Owin Katana
Mini-Training Owin Katana
 
Introduction to asp.net Wroclaw
Introduction to asp.net WroclawIntroduction to asp.net Wroclaw
Introduction to asp.net Wroclaw
 
Design and Configure Azure App Service Web Apps
Design and Configure Azure App Service Web AppsDesign and Configure Azure App Service Web Apps
Design and Configure Azure App Service Web Apps
 
Secret Management with Hashicorp Vault and Consul on Kubernetes
Secret Management with Hashicorp Vault and Consul on KubernetesSecret Management with Hashicorp Vault and Consul on Kubernetes
Secret Management with Hashicorp Vault and Consul on Kubernetes
 

Destaque

Rashad Aliyev - Hackathons
Rashad Aliyev - HackathonsRashad Aliyev - Hackathons
Rashad Aliyev - HackathonsRashad Aliyev
 
Təhlükəsiz proqram təminatının hazırlanma texnologiyaları
Təhlükəsiz proqram təminatının hazırlanma texnologiyalarıTəhlükəsiz proqram təminatının hazırlanma texnologiyaları
Təhlükəsiz proqram təminatının hazırlanma texnologiyalarıS H
 
Ikt sahəsində əsas istiqamətlər və iş imkanları
Ikt sahəsində əsas istiqamətlər və iş imkanlarıIkt sahəsində əsas istiqamətlər və iş imkanları
Ikt sahəsində əsas istiqamətlər və iş imkanlarıRamin Orujov
 
Obyekt yönümlü proqramlaşdırma
Obyekt yönümlü proqramlaşdırmaObyekt yönümlü proqramlaşdırma
Obyekt yönümlü proqramlaşdırmaS H
 
JAVA Polymorphism
JAVA PolymorphismJAVA Polymorphism
JAVA PolymorphismMahi Mca
 

Destaque (6)

Rashad Aliyev - Hackathons
Rashad Aliyev - HackathonsRashad Aliyev - Hackathons
Rashad Aliyev - Hackathons
 
Hackathon final
Hackathon finalHackathon final
Hackathon final
 
Təhlükəsiz proqram təminatının hazırlanma texnologiyaları
Təhlükəsiz proqram təminatının hazırlanma texnologiyalarıTəhlükəsiz proqram təminatının hazırlanma texnologiyaları
Təhlükəsiz proqram təminatının hazırlanma texnologiyaları
 
Ikt sahəsində əsas istiqamətlər və iş imkanları
Ikt sahəsində əsas istiqamətlər və iş imkanlarıIkt sahəsində əsas istiqamətlər və iş imkanları
Ikt sahəsində əsas istiqamətlər və iş imkanları
 
Obyekt yönümlü proqramlaşdırma
Obyekt yönümlü proqramlaşdırmaObyekt yönümlü proqramlaşdırma
Obyekt yönümlü proqramlaşdırma
 
JAVA Polymorphism
JAVA PolymorphismJAVA Polymorphism
JAVA Polymorphism
 

Semelhante a Architecture of Professionals.az Website and Migration to Grails Framework

Architecture of Professionals.az
Architecture of Professionals.azArchitecture of Professionals.az
Architecture of Professionals.azziyaaskerov
 
GROOVY ON GRAILS
GROOVY ON GRAILSGROOVY ON GRAILS
GROOVY ON GRAILSziyaaskerov
 
Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2Abhishek Gupta
 
Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2Abhishek Gupta
 
WEBLOGIC ADMINISTRATION 11g NEW BATCH STARTS FROM 16 DEC
WEBLOGIC ADMINISTRATION 11g NEW BATCH STARTS FROM 16 DECWEBLOGIC ADMINISTRATION 11g NEW BATCH STARTS FROM 16 DEC
WEBLOGIC ADMINISTRATION 11g NEW BATCH STARTS FROM 16 DECncodeit123
 
Latest Web development technologies 2021
 Latest Web development technologies 2021 Latest Web development technologies 2021
Latest Web development technologies 2021SWATHYSMOHAN
 
01 overview-servlets-and-environment-setup
01 overview-servlets-and-environment-setup01 overview-servlets-and-environment-setup
01 overview-servlets-and-environment-setupdhrubo kayal
 
D. Andreadis, Red Hat: Concepts and technical overview of Quarkus
D. Andreadis, Red Hat: Concepts and technical overview of QuarkusD. Andreadis, Red Hat: Concepts and technical overview of Quarkus
D. Andreadis, Red Hat: Concepts and technical overview of QuarkusUni Systems S.M.S.A.
 
Searching The Cloud - The eclipseRT Umbrella
Searching The Cloud - The eclipseRT UmbrellaSearching The Cloud - The eclipseRT Umbrella
Searching The Cloud - The eclipseRT UmbrellaMarkus Knauer
 
Dead-Simple Deployment: Headache-Free Java Web Applications in the Cloud
Dead-Simple Deployment: Headache-Free Java Web Applications in the CloudDead-Simple Deployment: Headache-Free Java Web Applications in the Cloud
Dead-Simple Deployment: Headache-Free Java Web Applications in the CloudCraig Dickson
 
Playframework + Twitter Bootstrap
Playframework + Twitter BootstrapPlayframework + Twitter Bootstrap
Playframework + Twitter BootstrapKevingo Tsai
 
Updated resume
Updated resumeUpdated resume
Updated resumepavani p
 
JAX 2012: Moderne Architektur mit Spring und JavaScript
JAX 2012: Moderne Architektur mit Spring und JavaScriptJAX 2012: Moderne Architektur mit Spring und JavaScript
JAX 2012: Moderne Architektur mit Spring und JavaScriptmartinlippert
 
Modern Architectures with Spring and JavaScript
Modern Architectures with Spring and JavaScriptModern Architectures with Spring and JavaScript
Modern Architectures with Spring and JavaScriptmartinlippert
 
How Spring Framework Really Works?
How Spring Framework Really Works?How Spring Framework Really Works?
How Spring Framework Really Works?NexSoftsys
 
Project Presentation on Advance Java
Project Presentation on Advance JavaProject Presentation on Advance Java
Project Presentation on Advance JavaVikas Goyal
 
2020-02-10 Java on Azure Solution Briefing
2020-02-10 Java on Azure Solution Briefing2020-02-10 Java on Azure Solution Briefing
2020-02-10 Java on Azure Solution BriefingEd Burns
 

Semelhante a Architecture of Professionals.az Website and Migration to Grails Framework (20)

Architecture of Professionals.az
Architecture of Professionals.azArchitecture of Professionals.az
Architecture of Professionals.az
 
GROOVY ON GRAILS
GROOVY ON GRAILSGROOVY ON GRAILS
GROOVY ON GRAILS
 
Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2
 
AngularJs
AngularJsAngularJs
AngularJs
 
Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2
 
WEBLOGIC ADMINISTRATION 11g NEW BATCH STARTS FROM 16 DEC
WEBLOGIC ADMINISTRATION 11g NEW BATCH STARTS FROM 16 DECWEBLOGIC ADMINISTRATION 11g NEW BATCH STARTS FROM 16 DEC
WEBLOGIC ADMINISTRATION 11g NEW BATCH STARTS FROM 16 DEC
 
Latest Web development technologies 2021
 Latest Web development technologies 2021 Latest Web development technologies 2021
Latest Web development technologies 2021
 
01 overview-servlets-and-environment-setup
01 overview-servlets-and-environment-setup01 overview-servlets-and-environment-setup
01 overview-servlets-and-environment-setup
 
Java script framework
Java script frameworkJava script framework
Java script framework
 
D. Andreadis, Red Hat: Concepts and technical overview of Quarkus
D. Andreadis, Red Hat: Concepts and technical overview of QuarkusD. Andreadis, Red Hat: Concepts and technical overview of Quarkus
D. Andreadis, Red Hat: Concepts and technical overview of Quarkus
 
Searching The Cloud - The eclipseRT Umbrella
Searching The Cloud - The eclipseRT UmbrellaSearching The Cloud - The eclipseRT Umbrella
Searching The Cloud - The eclipseRT Umbrella
 
NodeJs Frameworks.pdf
NodeJs Frameworks.pdfNodeJs Frameworks.pdf
NodeJs Frameworks.pdf
 
Dead-Simple Deployment: Headache-Free Java Web Applications in the Cloud
Dead-Simple Deployment: Headache-Free Java Web Applications in the CloudDead-Simple Deployment: Headache-Free Java Web Applications in the Cloud
Dead-Simple Deployment: Headache-Free Java Web Applications in the Cloud
 
Playframework + Twitter Bootstrap
Playframework + Twitter BootstrapPlayframework + Twitter Bootstrap
Playframework + Twitter Bootstrap
 
Updated resume
Updated resumeUpdated resume
Updated resume
 
JAX 2012: Moderne Architektur mit Spring und JavaScript
JAX 2012: Moderne Architektur mit Spring und JavaScriptJAX 2012: Moderne Architektur mit Spring und JavaScript
JAX 2012: Moderne Architektur mit Spring und JavaScript
 
Modern Architectures with Spring and JavaScript
Modern Architectures with Spring and JavaScriptModern Architectures with Spring and JavaScript
Modern Architectures with Spring and JavaScript
 
How Spring Framework Really Works?
How Spring Framework Really Works?How Spring Framework Really Works?
How Spring Framework Really Works?
 
Project Presentation on Advance Java
Project Presentation on Advance JavaProject Presentation on Advance Java
Project Presentation on Advance Java
 
2020-02-10 Java on Azure Solution Briefing
2020-02-10 Java on Azure Solution Briefing2020-02-10 Java on Azure Solution Briefing
2020-02-10 Java on Azure Solution Briefing
 

Último

The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 

Último (20)

The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 

Architecture of Professionals.az Website and Migration to Grails Framework

  • 1. Architecture of Professionals.az Ziya Askerov April 2013 www.professionals.az
  • 2. CONTENT  User Profile & (simple Company Profile)  Messaging  Jobs, Job Seekers, Job Posts  Networking  Advertisements  Search Professionals  News Feed
  • 3. About  Over 8000 registered users  Based on Java Technologies  Centos 5.5 OS with 1024 MB RAM (VPS)  Only 1 Server - Application Server - MYSQL Database - MailServer - Subversion
  • 4. Key Technologies  JAVA  JSP/SERVLET  JBOSS , TOMCAT  AJAX  MYSQL  JQUERY  ORM  SVN(SUBVERSION)
  • 5. MVC ARCHITECTURE Request Front Controller Servlet VIEW MODEL
  • 6. Listeners & Filters Request XSS UTF-8 Filter for XSS (Cross-Site Scripting) and SQL Injection attack CharacterSet filter Session Listener If is new SOURSE
  • 9. SECURITY  SERVER SECURITY  NETWORK SECURITY  APPLICATION SERVER SECURITY  APPLICATION SECURITY
  • 10. Security Problems  Cross-Site Scripting ATTACKS  SOLUTION: Use filter  Sql Injection ATTACKS  SOLUTION: Use filter  Cross-Site Request Forgery ATTACKS  SOLUTION: Use token,session control  Application Server ATTACKS  Server ATTACKS
  • 11. Server/Client side Validation  Java Scrpit validation problems  SOLUTION: Use server side validation  Email, Url validation etc.  SOLUTION: Use server side validation  Double submissions  SOLUTION: Use token  Browsers compatibility  SOLUTION: Use JavaScript framework (JQuery)
  • 13. Performance & Optimization  Cashing  Connection Pooling  Application Server Tuning  Java VM Tuning  Image optimization  Js, Css compression
  • 19. Migration to Groovy on Grails  Build modern, sophisticated and robust Groovy web applications in record time!  Grails brings back the enjoyment of Java web development.
  • 20. Why GRAILS ?  Rapid Have your next Web project done in weeks instead of months. Grails delivers a new age of Java web application productivity.  Dynamic Get instant feedback, see instant results. Grails is the premier dynamic language web framework for the JVM.  Robust Powered by Spring and designed for the JVM, Grails outperforms the competition. Dynamic, agile web development without compromises.
  • 22. Why GRAILS ?  Based on battle tested and proven Java frameworks (Spring, Hibernate, SiteMesh, Quartz, etc)  Based on Groovy language  GORM(Grails Object Relational Mapping)  Doesn’t stop you from using the power of underlying frameworks  Easy to set-up and get started  Minimal server restart required while development  Convention over Configuration / No painful XML configuration & XML Management  Tag Lib Authoring mechanism  Tons of available plugins
  • 23. COMPANIES USING GRAILS “Groovy is so much quicker and simpler to write code with, so we can get applications up and running faster,” Mullen confirms. “With Groovy and Grails we can create a new feature in a week, when before it could easily take a month or more.”
  • 24. Dinlədiyiniz üçün təşəkkür edirəm ! Ziya ASKEROV ziyaaskerov@gmail.com Aprel 2013 Ziya ASKEROV ziyaaskerov@gmail.com Aprel 2013

Notas do Editor

  1. EJB is a server-side component that encapsulates the business logic of an application
  2. JMS Interfaces: connectionfactory: administrative object used by client to create a connection connection: an active connection for JMS provider destination: administrative object that encapsulates the identity of a message destination session: a single-threaded context for sending/receiving message messageproducer: an object created by a session that is used for sending msg to a dest messageconsumer: similar
  3. JMS Interfaces: connectionfactory: administrative object used by client to create a connection connection: an active connection for JMS provider destination: administrative object that encapsulates the identity of a message destination session: a single-threaded context for sending/receiving message messageproducer: an object created by a session that is used for sending msg to a dest messageconsumer: similar