Biglots is a large retailer with over 325k products and a dynamic website. They adopted Grails to build their website to allow faster development and content changes by business users. Key reasons for choosing Grails included leveraging existing Java skills, ease of development, rapid prototyping, scalability, and tool/vendor support. They implemented Grails through training, books, and online resources. Their architecture includes functional plugins, development plugins, and performance tuning such as reducing database calls and static content delivery.
Too many of us battle with low prices and low self belief and we don't give or get the value we deserve.
Take a fresh look at what your prices say to your prospects.
From the Venetian Hotel in Las Vegas, Ray Ozzie, Chief Software Architect, will be joined by Corporate Vice President, Scott Guthrie and General Manager, Dean Hachamovitch to demonstrate the latest technologies built for Microsoft's Web platform. Ray will lay out his vision of the future to this audience of Web designers and developers from around the world
#AI + #ML + #Robotics combination is a game-changer, so #ServerlessTO members were lucky to have Alex Barbosa Coqueiro - Public Sector Solutions Architect Manager at AWS Canada, introduce us to AWS Robomaker & AWS DeepRacer!
Alex also talked about managed #ReinforcementLearning (RL) with Amazon SageMaker, and compared DeepRacer to Donkey Car – open source project for small-scale self-driving cars.
Video at: https://youtu.be/t8bo9gOveoo
Too many of us battle with low prices and low self belief and we don't give or get the value we deserve.
Take a fresh look at what your prices say to your prospects.
From the Venetian Hotel in Las Vegas, Ray Ozzie, Chief Software Architect, will be joined by Corporate Vice President, Scott Guthrie and General Manager, Dean Hachamovitch to demonstrate the latest technologies built for Microsoft's Web platform. Ray will lay out his vision of the future to this audience of Web designers and developers from around the world
#AI + #ML + #Robotics combination is a game-changer, so #ServerlessTO members were lucky to have Alex Barbosa Coqueiro - Public Sector Solutions Architect Manager at AWS Canada, introduce us to AWS Robomaker & AWS DeepRacer!
Alex also talked about managed #ReinforcementLearning (RL) with Amazon SageMaker, and compared DeepRacer to Donkey Car – open source project for small-scale self-driving cars.
Video at: https://youtu.be/t8bo9gOveoo
Securing your Amazon SageMaker model development in a highly regulated enviro...Amazon Web Services
Amazon SageMaker is a fully managed platform that enables developers and data scientists to quickly and easily build, train, and deploy machine learning models at any scale. In this session, we dive deep into the security configurations of Amazon SageMaker components, including notebooks, distributed and batch training, and hosting endpoints. We also review Vanguard’s implementation of key controls in a highly regulated environment. These include fine-grained access control, end-to-end encryption in transit, encryption at rest with AWS KMS customer-managed customer master keys (CMKs), private connectivity to all Amazon SageMaker APIs, and comprehensive audit trails for resource and data access.
FFWD.PRO - It's not you, It's me (or how to avoid being coupled with a Javasc...Marco Cedaro
General purpose Javascript frameworks are the ones that made the language popular in the past, but right now it is a risk to think about our application development and architecture just in relation to our favorite framework.
This talk highlights risks and suggest some techniques (from design patterns to snippet of code) to avoid being coupled to a specific framework
Feelin' Groovy: A Groovy Developer in the Java WorldKen Kousen
Keynote given at Gr8conf.in, Delhi, India, January 2017. Variation of same keynote given at Gr8conf.eu in Copenhagen (https://www.youtube.com/watch?v=KZ7u8CddgnI) and Gr8conf.us in Minneapolis, earlier in 2016
Fairfax Sydney #mojo #mojocon Feb 2017 Meetup - 360 video production basicsJamie Andrei
Fairfax Sydney #mojo #mojocon Feb 2017 Meetup - 360 video production basics
An introduction to 360 video / VR basics, introducting the concept, several approach & technologies, through to 2x key 360 social platforms (fish where the fish are), through to a basic workflow & some hands on Google Cardboard demos.
Striking Gold! How Mobile Marketing Pioneers are Winning the Hearts & Minds o...Paul Brown
This session ran on the first day of the a4u Expo 2012. The 1 hour slot focused on 3 mobile marketing perspectives for Advertisers, Agencies & Publishers to consider as they work there way towards joining the 10% of top 1 million domains that are mobile optimised. 3 core principles of mobile optimised web design are considered, as are methods of monetising that property, and how you might drive more traffic to it... Along the way Mobile Marketing Pioneers are flagged as examples. If you are interested in mobile of performance marketing, keep an eye on http://www.a4uexpo.com for future events.
Drupal is an enigma to its initiates and a sonic screwdriver to its experts. In module-land, users solve their own problems, the result being a myriad of puzzle pieces. Every ambitious drupal-focused company is building shortcuts to combine these pieces, be that through their own vertical Distributions, reusable Features or demo frameworks with Drolutions. What markets will Drupal conquer as these concepts mature? How can start-ups and enterprises leverage Drupal's rapid development velocity? How can you play your part in Drupal's vertical revolution?
Check out Distilled's own Rob Millard introduces us to some of the tools that he uses in his day-to-day CRO consulting work and shows you how to get the most out of them.
SEO for Large/Enterprise Websites - Data & Tech SideDominic Woodman
There is a lot to cover about SEO for large websites/enterprise.
In this talk we'll cover primarily the data analysis and the technical SEO side of things. In future presentations we'll look at more.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
More Related Content
Similar to S1 2GX 2011 - Using Grails on a public facing Fortune 500 website
Securing your Amazon SageMaker model development in a highly regulated enviro...Amazon Web Services
Amazon SageMaker is a fully managed platform that enables developers and data scientists to quickly and easily build, train, and deploy machine learning models at any scale. In this session, we dive deep into the security configurations of Amazon SageMaker components, including notebooks, distributed and batch training, and hosting endpoints. We also review Vanguard’s implementation of key controls in a highly regulated environment. These include fine-grained access control, end-to-end encryption in transit, encryption at rest with AWS KMS customer-managed customer master keys (CMKs), private connectivity to all Amazon SageMaker APIs, and comprehensive audit trails for resource and data access.
FFWD.PRO - It's not you, It's me (or how to avoid being coupled with a Javasc...Marco Cedaro
General purpose Javascript frameworks are the ones that made the language popular in the past, but right now it is a risk to think about our application development and architecture just in relation to our favorite framework.
This talk highlights risks and suggest some techniques (from design patterns to snippet of code) to avoid being coupled to a specific framework
Feelin' Groovy: A Groovy Developer in the Java WorldKen Kousen
Keynote given at Gr8conf.in, Delhi, India, January 2017. Variation of same keynote given at Gr8conf.eu in Copenhagen (https://www.youtube.com/watch?v=KZ7u8CddgnI) and Gr8conf.us in Minneapolis, earlier in 2016
Fairfax Sydney #mojo #mojocon Feb 2017 Meetup - 360 video production basicsJamie Andrei
Fairfax Sydney #mojo #mojocon Feb 2017 Meetup - 360 video production basics
An introduction to 360 video / VR basics, introducting the concept, several approach & technologies, through to 2x key 360 social platforms (fish where the fish are), through to a basic workflow & some hands on Google Cardboard demos.
Striking Gold! How Mobile Marketing Pioneers are Winning the Hearts & Minds o...Paul Brown
This session ran on the first day of the a4u Expo 2012. The 1 hour slot focused on 3 mobile marketing perspectives for Advertisers, Agencies & Publishers to consider as they work there way towards joining the 10% of top 1 million domains that are mobile optimised. 3 core principles of mobile optimised web design are considered, as are methods of monetising that property, and how you might drive more traffic to it... Along the way Mobile Marketing Pioneers are flagged as examples. If you are interested in mobile of performance marketing, keep an eye on http://www.a4uexpo.com for future events.
Drupal is an enigma to its initiates and a sonic screwdriver to its experts. In module-land, users solve their own problems, the result being a myriad of puzzle pieces. Every ambitious drupal-focused company is building shortcuts to combine these pieces, be that through their own vertical Distributions, reusable Features or demo frameworks with Drolutions. What markets will Drupal conquer as these concepts mature? How can start-ups and enterprises leverage Drupal's rapid development velocity? How can you play your part in Drupal's vertical revolution?
Check out Distilled's own Rob Millard introduces us to some of the tools that he uses in his day-to-day CRO consulting work and shows you how to get the most out of them.
SEO for Large/Enterprise Websites - Data & Tech SideDominic Woodman
There is a lot to cover about SEO for large websites/enterprise.
In this talk we'll cover primarily the data analysis and the technical SEO side of things. In future presentations we'll look at more.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
A tale of scale & speed: How the US Navy is enabling software delivery from l...sonjaschweigert1
Rapid and secure feature delivery is a goal across every application team and every branch of the DoD. The Navy’s DevSecOps platform, Party Barge, has achieved:
- Reduction in onboarding time from 5 weeks to 1 day
- Improved developer experience and productivity through actionable findings and reduction of false positives
- Maintenance of superior security standards and inherent policy enforcement with Authorization to Operate (ATO)
Development teams can ship efficiently and ensure applications are cyber ready for Navy Authorizing Officials (AOs). In this webinar, Sigma Defense and Anchore will give attendees a look behind the scenes and demo secure pipeline automation and security artifacts that speed up application ATO and time to production.
We will cover:
- How to remove silos in DevSecOps
- How to build efficient development pipeline roles and component templates
- How to deliver security artifacts that matter for ATO’s (SBOMs, vulnerability reports, and policy evidence)
- How to streamline operations with automated policy checks on container images
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024Neo4j
Neha Bajwa, Vice President of Product Marketing, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
S1 2GX 2011 - Using Grails on a public facing Fortune 500 website
1. CLICK TO EDIT MASTER TITLE STYLE
Click to edit Master text styles
– Second level
Third level
Using Grails on a public facing
Fortune 500 website
10/26/2011
2. Introduction
Jim Shingler
• Lead Technical Architect for Big Lots
• Beginning Groovy and Grails – Co-Author
• Griffon In Action – Co-Author
• Co-Creator of FallME (IOC Container for JavaME)
• Grails and Griffon plugin contributor
• Speaker
3. Agenda
• Background Biglots.com
• Stats
• Why Grails
• Adopting Grails
• Architecture
• Plugins
• Development Tools and Process
• Performance
• JVM Tuning
• Monitoring
4. BACKGROUND – WWW.BIGLOTS.COM
Biglots is the nation's largest
broadline closeout retailer, Big Lots
has the power to negotiate the best
deals in the business. We sell a broad
range of high-quality, brand-name
products, including consumables,
seasonal items, furniture,
housewares, toys, electronics, home
decor, tools and gifts.
5. BACKGROUND – WWW.BIGLOTS.COM
Lots of Items, over 325K
Not all items in all 1400 stores
Website has to handle this
VERY Dynamic,
High frequency of content change.
6. BACKGROUND – WWW.BIGLOTS.COM
Business Partner – Marketing
Marketing owns website, sets
functional direction, sets functional
priorities, responsible for content
creation and management.
7. BACKGROUND – WWW.BIGLOTS.COM
Business Functional Requirements /
Objectives
Bring Website development in-house
Faster content creation and
deployment
Give Business Partner more control
No Style, Layout Changes
8. BACKGROUND – WWW.BIGLOTS.COM
IT Non-Functional Requirements /
Objectives
Minimize IT Support required
Supportable by IT
Must run on Windows Servers
Must use SqlServer DB
Give Business Partner tools they
need
Java based
48. WHY GRAILS
Background:
Java Shop
Small Shop (140 People in all of IT, 15 Java Devs)
Limited experience w/ Web
Technologies
Use Spring and Hibernate
49. WHY GRAILS
Factors:
Must leverage existing skill sets and
experiences
Has to be easy
Must be rapid
High developer productivity required
Must scale easily
Tool support
Vendor support
50. WHY GRAILS
Some Options Considered:
Struts
JSF / Seam
Wicket
Rails
PHP
Grails
Choose Grails:
Experience implementing Wholesale Handheld System
-Flex, Handheld, and Web interfaces
-Connected to Local DB and SAP
51. WHY GRAILS
Factors:
Must leverage existing skill sets and
experiences
Groovy leverages Java Ecosystem
Groovy leverages Java skill sets
Grails leverage Spring, Hibernate and many
other industry standard frameworks
52. WHY GRAILS
Factors:
Has to be easy
Can use Groovy or Java
Groovy is easy
Grails conventions
Grails easy to move outside of conventions
when you need to
53. WHY GRAILS
Factors:
Must be rapid
Grails development is very addictive, You
get lots done with very little coding
compared to the old ways
Fast results
WARNING: Grails development is very
addictive. MUST TEST
54. WHY GRAILS
Factors:
Highdeveloper productivity required
Groovy and Grails allow great developer
productivity
Developers produce a lot of functionality
quickly
Consistently beating effort estimates
WARNING: Grails development is very
addictive. MUST TEST
55. WHY GRAILS
Factors:
Must scale easily
Grails scales like any other Java Web
application, Same approach.
56. WHY GRAILS
Factors:
Tool support
IDE – STS (Eclipse)
Proven industry standard frameworks
Proven industry standard infrastructure
58. WHY GRAILS
Factors:
Must leverage existing skill sets and
experiences
Has to be easy
Must be rapid
High developer productivity required
Must scale easily
Tool support
Vendor support
59. CLICK TO EDIT MASTER TITLE STYLE
Click to edit Master text styles
– Second level
Third level
ADOPTING GRAILS
61. ADOPTING GRAILS – GRAILS JUMPSTART
TRAINING
http://upload.wikimedia.org/wikipedia/commons/4/4a/CBC_Classroom_1932.jpg
62. ADOPTING GRAILS – GRAILS JUMPSTART
TRAINING
Grails Course
Taught by Jeff Brown
- 4 Day On-Site
- Elected +1 Day Consulting
- 8 developers
Video sample of coarse:
http://www.springsource.com/training/free-online-video-metaprogramming-
groovy
64. ADOPTING GRAILS – BOOKS
Definitive Guide to Grails
December, 2006
Graeme Rocher
January, 2009
2nd Edition
Graeme Rocher, Jeff
Brown
65. ADOPTING GRAILS – BOOKS
Beginning Groovy and Grails
June, 2008
Christopher Judd, Joseph
Nusairat, James Shingler
66. ADOPTING GRAILS – BOOKS
Grails Quick Start
October, 2009
Dave Klein
The Pragmatic Bookshelf
67. ADOPTING GRAILS – BOOKS
Grails In Action
May, 2009
Glen Smith and Peter
Ledbrook
68. ADOPTING GRAILS – BOOKS
Groovy In Action
January, 2007
Dierk Koenig with Andrew
Glover, Paul King, Guillaume
Laforge and Jon Skeet
Summer, 2012
2nd Edition
MEAP 10 Chapters Available
Dierk König, Guillaume
Laforge, Paul King, Jon
Skeet, and Hamlet D'Arcy
70. ADOPTING GRAILS – OTHER RESOURCES
Groovy Mag http://groovymag.com/
Michael
Kismal
71. ADOPTING GRAILS – OTHER RESOURCES
Grails Podcast
http://www.grailspodcast.com
The Grails Podcast is a bi-weekly podcast
about the Groovy scripting language,
the Grails Web Framework and more. It is
run by Glen Smith from Canberra, Australia
and Sven Haiges
72. ADOPTING GRAILS – OTHER RESOURCES
Groovy Blogs http://groovyblogs.org
73. ADOPTING GRAILS – OTHER RESOURCES
Mail Groups and Forums
http://grails.org/Mailing+lists
http://grails.org/Forums
74. ADOPTING GRAILS – OTHER RESOURCES
Twitter – Some people to follow
Graeme Rochere - @graemerocher
Guillaumm Laforge - @glaforge
Jeff Scott Brown - @jeffscottbrown
Dierk Konig- @mittie
Peter Ledbrook - @pledbrook
Burt Beckwith - @burtbeckwith
Paul King- @paulk_asert
Scott Davis - @scottdavis99
Dave Klein - @daveklein
This is a good starting place, . . . . There are many more.
79. ARCHITECTURE - CDN
1 A new user request www.biglots.com
2 Akamai looks for cookie. Since it isn’t set
send the request to BigLots Load
Balancer
3 BigLots Load Balancer sends the request
to an application server
4 Application Server returns response to
BigLots Load Balancer with cookie set
5 BigLots Load Balancer returns response
to Akamai
6 Akamai returns response to user
7 User makes additional request in same
session
8 Akamai looks for cookie. Since it is found,
it is mapped to the appropriate application
server
9 Akamai sends request to the appropriate
application server
10 Application server returns response to
Akamai
11 Akamai returns response to user
82. DEVELOPMENT TOOLS AND PROCESS
IDE: Springsource Tool Suite (STS)
CI: Bamboo
Issue Tracking: Jira
Wiki: Confluence
SCM: Subversion
Browsers: All, Favor Firefox and
Chrome
Local Dev
- Tomcat, MySQL, HSQL, Grails 1.3.7
90. PERFORMANCE & TUNING - JVM TUNING
Log It
-Xloggc:D:apps...logsgc_hnwip00109_ent1.log
-XX:+PrintGC
-XX:+PrintGCDetails
-XX:+PrintGCTimeStamps
-XX:+PrintHeapAtGC
-XX:+PrintTenuringDistribution
Manage Sizing
-XX:MaxPermSize=512m <Permanent Gen Size>
-Xms4096m <Old Gen Initial Heap Size>
-Xmx4096m <Old Gen Maximum Heap Size>
-XX:NewSize=1792m <New Gen (nursery) Size>
-Xss384k <Stack Size>
Collectors
-XX:+UseConcMarkSweepGC <Old Gen – Concurrent Collector (Low Pause)>
-XX:+UseParNewGC <Young Gen - Parallel Collect (Low Pause)>
-XX:+CMSClassUnloadingEnabled <GC Sweep PermGen – Remove Unused Classes>
91. PERFORMANCE & TUNING
Manage Static Content / Assets
Use a Web Server and Application
Server
Move Static Content to Web Server
and Content Delivery Network (CDN)
What
happened?
92. PERFORMANCE & TUNING
Manage Static Content / Assets
Use Best Practices
http://stevesouders.com/hpws/rules.php
http://developer.yahoo.com/performance/rules.html
http://juddsolutions.com/downloads/10_performance_tips.pdf
93. PERFORMANCE & TUNING
In efficient code
list.each{item -> …} vs for(item in list)
Closure
Vs
Code Block
Advice: You might want to see
how it impacts your
application
95. PERFORMANCE & TUNING
In efficient code
Learn more about Groovy and Grails
http://blog.springsource.com/2010/06/23/gorm-gotchas-part-1/
http://blog.springsource.com/2010/07/02/gorm-gotchas-part-2/
http://blog.springsource.com/2010/07/02/gorm-gotchas-part-3/
Tuning Your Grails Applications
http://www.youtube.com/watch?v=gl83-80Qq94
96. CLICK TO EDIT MASTER TITLE STYLE
Click to edit Master text styles
– Second level
Third level
MONITORING
97. MONITORING - OPERATIONAL
Internal Monitoring: Detailed information on the
server (Box), Web Server (IIS), Application
Server (TC), Applications
Internal Monitoring: Alerting server
(Box), OS, Server Logs, Application Logs
External Monitoring: User Experience, Runs
scripts around the country.
External Monitoring: Constantly monitoring
security of the web sites
98. MONITORING - ANALYTICAL
External Monitoring: All of the analytics that the
business people want
External Monitoring: More analytics
External Edge Monitoring: Unique
Visitors, Popular pages, Errors, …
100. Q & A DISCUSSION
Question and Answer
Discussion
@JShingler
http://www.linkedin.com/in/jimshingler
http://jshingler.blogspot.com/
ShinglerJim at gmail.com
101. CLICK TO EDIT MASTER TITLE STYLE
Click to edit Master text styles
– Second level
Third level
Thank You
Editor's Notes
Early DaysNew StoreCorp Conf CallStore LocatorCorpCorp Conf CallInvestor RelationsCommunity RelationsJobsNews Center
Online AdsTipsEmail Campaigns
Advertisements (Furnature)Toys For TotsWholesale Business
-Redesign-Buzz Screens More Ads-Aisle By Aisle
Departments / CatalogsDealsMore Ads
More Refinement
Site Redesign CleanerAll about Retail Separate Corp SiteBuzzClub more pronounced
Grails Port**Introduced Search capability BIG HIT 3rd most popular page
Featured Items
Help Customer Find Store
Third Party Partner for Flash / HTML Ads
Buzz Club-How long until I get a reward
Accoutn Info and what your interested in and more Ads
Items in a catalogBreadcrumbsMulti Page / View All / Sort
Details on individual itemSocial Media LinksRelated Items “Might Also Like”
Campaigns – Emails-Coordinated with website changesDrive Customers to the website2-3 Emails / Week
18 Release in a little less than a yearBlue are Major ReleaseRed Minor / bug fixGreen Special Event
StatsPages hitsRequestsResponse time (Different Parts of Country)
StatsPages hitsRequestsResponse time (Different Parts of Country)
~ 160K / Hr
~2M / Day
~10M Week
~35M / Month
~40K / Hr
~550K / Day
~2M / Week
~6.5M Month
StatsPages hitsRequestsResponse time (Different Parts of Country)
Stats2010 – Load Times and Fully Loaded TimeSignificantly Faster
StatsPages hitsRequestsResponse time (Different Parts of Country)
Why GrailsOptions InvestigateStrutsJSF / SeamWicketRailsGrailsPHPBiglots is a Java ShopChoose Grails Experience implimenting Wholesale Handheld SystemFlex, Handheld, and Web interfacesConnected to Local DB and SAP
Why GrailsOptions InvestigateStrutsJSF / SeamWicketRailsGrailsPHPBiglots is a Java ShopChoose Grails Experience implimenting Wholesale Handheld SystemFlex, Handheld, and Web interfacesConnected to Local DB and SAP
Why GrailsOptions InvestigateStrutsJSF / SeamWicketRailsGrailsPHPBiglots is a Java ShopChoose Grails Experience implimenting Wholesale Handheld SystemFlex, Handheld, and Web interfacesConnected to Local DB and SAP
Why GrailsOptions InvestigateStrutsJSF / SeamWicketRailsGrailsPHPBiglots is a Java ShopChoose Grails Experience implimenting Wholesale Handheld SystemFlex, Handheld, and Web interfacesConnected to Local DB and SAP
Why GrailsOptions InvestigateStrutsJSF / SeamWicketRailsGrailsPHPBiglots is a Java ShopChoose Grails Experience implimenting Wholesale Handheld SystemFlex, Handheld, and Web interfacesConnected to Local DB and SAP
Why GrailsOptions InvestigateStrutsJSF / SeamWicketRailsGrailsPHPBiglots is a Java ShopChoose Grails Experience implimenting Wholesale Handheld SystemFlex, Handheld, and Web interfacesConnected to Local DB and SAP
Why GrailsOptions InvestigateStrutsJSF / SeamWicketRailsGrailsPHPBiglots is a Java ShopChoose Grails Experience implimenting Wholesale Handheld SystemFlex, Handheld, and Web interfacesConnected to Local DB and SAP
Why GrailsOptions InvestigateStrutsJSF / SeamWicketRailsGrailsPHPBiglots is a Java ShopChoose Grails Experience implimenting Wholesale Handheld SystemFlex, Handheld, and Web interfacesConnected to Local DB and SAP
Why GrailsOptions InvestigateStrutsJSF / SeamWicketRailsGrailsPHPBiglots is a Java ShopChoose Grails Experience implimenting Wholesale Handheld SystemFlex, Handheld, and Web interfacesConnected to Local DB and SAP
Why GrailsOptions InvestigateStrutsJSF / SeamWicketRailsGrailsPHPBiglots is a Java ShopChoose Grails Experience implimenting Wholesale Handheld SystemFlex, Handheld, and Web interfacesConnected to Local DB and SAP
Why GrailsOptions InvestigateStrutsJSF / SeamWicketRailsGrailsPHPBiglots is a Java ShopChoose Grails Experience implimenting Wholesale Handheld SystemFlex, Handheld, and Web interfacesConnected to Local DB and SAP
Why GrailsOptions InvestigateStrutsJSF / SeamWicketRailsGrailsPHPBiglots is a Java ShopChoose Grails Experience implimenting Wholesale Handheld SystemFlex, Handheld, and Web interfacesConnected to Local DB and SAP
Why GrailsOptions InvestigateStrutsJSF / SeamWicketRailsGrailsPHPBiglots is a Java ShopChoose Grails Experience implimenting Wholesale Handheld SystemFlex, Handheld, and Web interfacesConnected to Local DB and SAP
Adopting Grails
Adopting Grails
Adopting Grails
Adopting Grails
Adopting Grails
Adopting Grails
Adopting Grails
Adopting Grails
Adopting Grails
Adopting Grails
Adopting Grails
Adopting Grails
Adopting Grails
Adopting Grails
ArchitecturePictureDMZLoad BalancerApplication ServerDatabase ServerHyperic ServerTwo NodesIIS over 4 TomcatsSearch – Started with Searchable, Switching to Elastic
ArchitecturePictureDMZLoad BalancerApplication ServerDatabase ServerHyperic ServerTwo NodesIIS over 4 TomcatsSearch – Started with Searchable, Switching to Elastic
ArchitecturePictureDMZLoad BalancerApplication ServerDatabase ServerHyperic ServerTwo NodesIIS over 4 TomcatsSearch – Started with Searchable, Switching to Elastic
ArchitecturePictureDMZLoad BalancerApplication ServerDatabase ServerHyperic ServerTwo NodesIIS over 4 TomcatsSearch – Started with Searchable, Switching to Elastic