Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
TerraSky
PDF, PPTX
1,987 views
02 singletonとflyweightを使った省エネapex
TerraSky Power Night 2014/05/09 開催 講演資料 2
Technology
◦
Read more
2
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 11
2
/ 11
3
/ 11
4
/ 11
5
/ 11
6
/ 11
7
/ 11
8
/ 11
9
/ 11
10
/ 11
11
/ 11
More Related Content
PDF
本の紹介「絵で見てわかるITインフラの仕組み」
by
Takahiko Sato
PDF
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
by
Preferred Networks
PDF
最近のJuju/MAASについて 〜 15分版 - OpenStack最新情報セミナー 2017年11月
by
VirtualTech Japan Inc.
PPTX
Wave analyticsによるダッシュボード開発 (データセット作成編)
by
Salesforce Developers Japan
PDF
04 salesforceでのソフトフォン実装パターン
by
TerraSky
PDF
はじめようLightningコンポーネント
by
Salesforce Developers Japan
PPTX
Bluemixクラウド開発入門 Devlivery Pipeline デモ
by
Hideaki Tokida
PDF
OSSのオーケストレーションツールCloudConductor入門 ~インストールでのハマりどころ~
by
Yoshimi Tominaga
本の紹介「絵で見てわかるITインフラの仕組み」
by
Takahiko Sato
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
by
Preferred Networks
最近のJuju/MAASについて 〜 15分版 - OpenStack最新情報セミナー 2017年11月
by
VirtualTech Japan Inc.
Wave analyticsによるダッシュボード開発 (データセット作成編)
by
Salesforce Developers Japan
04 salesforceでのソフトフォン実装パターン
by
TerraSky
はじめようLightningコンポーネント
by
Salesforce Developers Japan
Bluemixクラウド開発入門 Devlivery Pipeline デモ
by
Hideaki Tokida
OSSのオーケストレーションツールCloudConductor入門 ~インストールでのハマりどころ~
by
Yoshimi Tominaga
More from TerraSky
PDF
TerraSky PowerNight - Salesforce is ready for ERP -
by
TerraSky
PDF
TerraSky PowerNight Soql performance explained
by
TerraSky
PDF
7 power night2014_kanbayashi
by
TerraSky
PDF
6 power night2014_sasaki
by
TerraSky
PPTX
これだけは押さえておきたいDreamforceを楽しむための英語力 下川原章仁
by
TerraSky
PDF
4 power night2014_yoshikawa
by
TerraSky
PPTX
セールスフォース的開発メソッドのススメ 須山洋輔
by
TerraSky
PDF
2 power night2014_erp
by
TerraSky
PDF
10 power night2014_uematsu
by
TerraSky
PDF
13 power nignt2014_yanase
by
TerraSky
PDF
11 power nignt_furuta
by
TerraSky
PDF
1 power night2014_imaoka
by
TerraSky
PDF
5 power night2014_totsuka
by
TerraSky
PDF
9 power night2014_iwai
by
TerraSky
PDF
TerraSky PowerNight myEinstein
by
TerraSky
PPTX
Dreamforce2016から読み解く、これからのit 大友幹
by
TerraSky
PPTX
Xivelyで楽々IoT 岩井哲郎
by
TerraSky
PDF
8 power night2014_nakamura
by
TerraSky
PDF
12 power night2014 miyanishi
by
TerraSky
PDF
3 power nignt2014_yamamoto
by
TerraSky
TerraSky PowerNight - Salesforce is ready for ERP -
by
TerraSky
TerraSky PowerNight Soql performance explained
by
TerraSky
7 power night2014_kanbayashi
by
TerraSky
6 power night2014_sasaki
by
TerraSky
これだけは押さえておきたいDreamforceを楽しむための英語力 下川原章仁
by
TerraSky
4 power night2014_yoshikawa
by
TerraSky
セールスフォース的開発メソッドのススメ 須山洋輔
by
TerraSky
2 power night2014_erp
by
TerraSky
10 power night2014_uematsu
by
TerraSky
13 power nignt2014_yanase
by
TerraSky
11 power nignt_furuta
by
TerraSky
1 power night2014_imaoka
by
TerraSky
5 power night2014_totsuka
by
TerraSky
9 power night2014_iwai
by
TerraSky
TerraSky PowerNight myEinstein
by
TerraSky
Dreamforce2016から読み解く、これからのit 大友幹
by
TerraSky
Xivelyで楽々IoT 岩井哲郎
by
TerraSky
8 power night2014_nakamura
by
TerraSky
12 power night2014 miyanishi
by
TerraSky
3 power nignt2014_yamamoto
by
TerraSky
Recently uploaded
PDF
エンジニアが選ぶべきAIエディタ & Antigravity 活用例@ウェビナー「触ってみてどうだった?Google Antigravity 既存IDEと...
by
NorihiroSunada
PPTX
楽々ナレッジベース「楽ナレ」3種比較 - Dify / AWS S3 Vector / Google File Search Tool
by
Kiyohide Yamaguchi
PDF
流行りに乗っかるClaris FileMaker 〜AI関連機能の紹介〜 by 合同会社イボルブ
by
Evolve LLC.
PDF
20251210_MultiDevinForEnterprise on Devin 1st Anniv Meetup
by
Masaki Yamakawa
PDF
Machine Tests Benchmark Suite. Explain github.com/alexziskind1/machine_tests #2
by
Tasuku Takahashi
PDF
Machine Tests Benchmark Suite. Explain github.com/alexziskind1/machine_tests #1
by
Tasuku Takahashi
エンジニアが選ぶべきAIエディタ & Antigravity 活用例@ウェビナー「触ってみてどうだった?Google Antigravity 既存IDEと...
by
NorihiroSunada
楽々ナレッジベース「楽ナレ」3種比較 - Dify / AWS S3 Vector / Google File Search Tool
by
Kiyohide Yamaguchi
流行りに乗っかるClaris FileMaker 〜AI関連機能の紹介〜 by 合同会社イボルブ
by
Evolve LLC.
20251210_MultiDevinForEnterprise on Devin 1st Anniv Meetup
by
Masaki Yamakawa
Machine Tests Benchmark Suite. Explain github.com/alexziskind1/machine_tests #2
by
Tasuku Takahashi
Machine Tests Benchmark Suite. Explain github.com/alexziskind1/machine_tests #1
by
Tasuku Takahashi
02 singletonとflyweightを使った省エネapex
1.
1 勉強会 SingletonとFlyweightを使った 省エネApex 2014年5月9日(金) 池島 晴昭
2.
概要 目的 基礎的な知識はプラットフォーム問わずに効 果を発揮することを知ってもらう
成功要因 オブジェクト指向の重要性を理解してもらう 先人の知恵というものは凄いんだ、ということを 理解してもらう 2
3.
テーマ Singleton と Flyweight
を使った省エネApex 3 マルチテナントゆえのガバナ制限 • 1回のトランザクションで実行できるSOQLクエリの合計回数 → 100回 FlyweightSingleton
4.
Singleton と Flyweight
とは 4 オブジェクト指向プログラミングにおける 23のデザインパターン GoFデザインパターン FlyweightSingleton
5.
Singleton とは 5 実行環境内でインスタンスを唯一に保つ Singleton - me
: Singleton - Singleton() + getInstance() : Singleton 1. プロパティに自分自身のインスタンスを static で持つ 2. コンストラクタを private にする 3. インスタンスの取得は static method を介して行う
6.
Flyweight とは 6 1つのインスタンスを再利用して負荷を軽減する FlyweightFactory - cash
: Flyweight[] + getFlyweight() : Flyweight Flyweight 1. 再利用対象のインスタンスをキャッシュするためのプ ロパティを持つ 2. 取得要求時、該当のインスタンスがキャッシュになけ れば生成しキャッシュする 3. 取得を要求されたインスタンスを返却する
7.
例1 課題 7 CustomerTrigger お客様 CustomerStatusLogic BusinessTrigger 案件 BusinessStatusLogic <<update>> レコード タイプ <<select>> <<select>> 複数の
Trigger から同じマスタを参照する場合 同じようなクエリを複数回発行することになる Trigger ごとに select
8.
例1 解決策 8 CustomerTrigger お客様 CustomerStatusLogic BusinessTrigger 案件 BusinessStatusLogic <<update>> レコード タイプ Singleton &
Flyweight クラスを介してマスタを参照すると <<Singleton&Flyweight>> RecordTypeDao <<get>> <<get>> 同じようなクエリの発行を1回にすることができる <<select>> select は一回
9.
例2 課題 9 CalendarLogic バッチサイズを超える件数の DML
を実行する場合 BusinessTrigger 予約枠 BusinessStatusLogic レコード タイプ <<select>> <<insert>> 実行バッチ回数分、同じクエリを発行することになる 全件数/200 回の Trigger を実行 バッチの実行ごとに select
10.
例2 解決策 10 CalendarLogic Singleton &
Flyweight クラスを介してマスタを参照すると BusinessTrigger 予約枠 BusinessStatusLogic レコード タイプ <<select>> <<insert>> 同じクエリの発行を1回にすることができる <<Singleton&Flyweight>> RecordTypeDao <<get>> 全件数/200 回の Trigger を実行 select は一回
11.
まとめ 11 一回のトランザクションで 同じデータを複数回参照することになるような 更新処理ロジックは Singleton&Flyweight を使うことで SOQL の発行回数を削減することができる 先人の知恵をないがしろにせず 自らのスキルとして吸収していきましょう
Download