ورود به حساب

نام کاربری گذرواژه

گذرواژه را فراموش کردید؟ کلیک کنید

حساب کاربری ندارید؟ ساخت حساب

ساخت حساب کاربری

نام نام کاربری ایمیل شماره موبایل گذرواژه

برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید


09117307688
09117179751

در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید

دسترسی نامحدود

برای کاربرانی که ثبت نام کرده اند

ضمانت بازگشت وجه

درصورت عدم همخوانی توضیحات با کتاب

پشتیبانی

از ساعت 7 صبح تا 10 شب

دانلود کتاب High-Performance Java Persistence

دانلود کتاب ماندگاری جاوا با کارایی بالا

High-Performance Java Persistence

مشخصات کتاب

High-Performance Java Persistence

ویرایش: 2020 
نویسندگان:   
سری:  
ISBN (شابک) : 9789730228236 
ناشر:  
سال نشر: 2020 
تعداد صفحات: 461 
زبان: English 
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) 
حجم فایل: 19 مگابایت 

قیمت کتاب (تومان) : 45,000



ثبت امتیاز به این کتاب

میانگین امتیاز به این کتاب :
       تعداد امتیاز دهندگان : 8


در صورت تبدیل فایل کتاب High-Performance Java Persistence به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.

توجه داشته باشید کتاب ماندگاری جاوا با کارایی بالا نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.


توضیحاتی در مورد کتاب ماندگاری جاوا با کارایی بالا

بیشترین بهره را از لایه پایداری خود ببرید یک لایه دسترسی به داده با کارایی بالا باید با سیستم پایگاه داده زیربنایی همخوانی داشته باشد. دانستن عملکرد داخلی یک پایگاه داده رابطه‌ای و چارچوب‌های دسترسی به داده در حال استفاده می‌تواند بین یک برنامه سازمانی با کارایی بالا و برنامه‌ای که به سختی می‌خزد تفاوت ایجاد کند. این کتاب سفری به تنظیم عملکرد دسترسی به داده های جاوا است. از مدیریت اتصال گرفته تا به‌روزرسانی‌های دسته‌ای، اندازه‌های واکشی و مکانیسم‌های کنترل همزمان، کارکردهای درونی رایج‌ترین چارچوب‌های دسترسی به داده جاوا را آشکار می‌کند. بخش اول با هدف کاهش شکاف بین توسعه دهندگان برنامه و مدیران پایگاه داده است. به همین دلیل، هم JDBC و هم اصول پایگاه داده را که در کاهش زمان پاسخ تراکنش از اهمیت بالایی برخوردار هستند، پوشش می دهد. در این بخش اول، با مدیریت اتصال، به روز رسانی دسته ای، ذخیره بیانیه، واکشی مجموعه نتایج و تراکنش های پایگاه داده آشنا خواهید شد. بخش دوم نشان می دهد که چگونه می توانید از مزایای JPA و Hibernate بدون به خطر انداختن عملکرد برنامه استفاده کنید. در این بخش دوم، با کارآمدترین نگاشت هایبرنیت (انواع پایه، ارتباط، وراثت)، واکشی بهترین شیوه ها، مکانیسم های ذخیره سازی و کنترل همزمانی آشنا خواهید شد. بخش سوم به jOOQ و قابلیت‌های جستجوی ایمن تایپ قدرتمند آن، مانند توابع پنجره، عبارات جدول رایج، upsert، رویه‌های ذخیره شده و توابع پایگاه داده اختصاص دارد.


توضیحاتی درمورد کتاب به خارجی

Get the most out of your persistence layer A high-performance data access layer must resonate with the underlying database system. Knowing the inner workings of a relational database and the data access frameworks in use can make the difference between a high-performance enterprise application and one that barely crawls. This book is a journey into Java data access performance tuning. From connection management, to batch updates, fetch sizes and concurrency control mechanisms, it unravels the inner workings of the most common Java data access frameworks. The first part aims to reduce the gap between application developers and database administrators. For this reason, it covers both JDBC and the database fundamentals that are of paramount importance when reducing transaction response times. In this first part, youll learn about connection management, batch updates, statement caching, result set fetching and database transactions. The second part demonstrates how you can take advantage of JPA and Hibernate without compromising application performance. In this second part, youll learn about the most efficient Hibernate mappings (basic types, associations, inheritance), fetching best practices, caching and concurrency control mechanisms. The third part is dedicated to jOOQ and its powerful type-safe querying capabilities, like window functions, common table expressions, upsert, stored procedures and database functions.



فهرست مطالب

Table of Contents
Preface
	The database server and the connectivity layer
	The application data access layer
		The ORM framework
		The native query builder framework
	Video Course
		Testimonials
I JDBC and Database Essentials
	Performance and Scaling
		Response time and throughput
		Database connections boundaries
		Scaling up and scaling out
			Master-Slave replication
			Multi-Master replication
			Sharding
	JDBC Connection Management
		DriverManager
		DataSource
			Why is pooling so much faster?
		Queuing theory capacity planning
		Practical database connection provisioning
			A real-life connection pool monitoring example
				Concurrent connection request count metric
				Concurrent connection count metric
				Maximum pool size metric
				Connection acquisition time metric
				Retry attempts metric
				Overall connection acquisition time metric
				Connection lease time metric
	Batch Updates
		Batching Statements
		Batching PreparedStatements
			Choosing the right batch size
			Bulk processing
		Retrieving auto-generated keys
			Sequences to the rescue
	Statement Caching
		Statement lifecycle
			Parser
			Optimizer
				Execution plan visualization
			Executor
		Caching performance gain
		Server-side statement caching
			Bind-sensitive execution plans
		Client-side statement caching
	ResultSet Fetching
		ResultSet scrollability
		ResultSet changeability
		ResultSet holdability
		Fetching size
		ResultSet size
			Too many rows
				SQL limit clause
				JDBC max rows
				Less is more
			Too many columns
	Transactions
		Atomicity
		Consistency
		Isolation
			Concurrency control
				Two-phase locking
				Multi-Version Concurrency Control
			Phenomena
				Dirty write
				Dirty read
				Non-repeatable read
				Phantom read
				Read skew
				Write skew
				Lost update
			Isolation levels
				Read Uncommitted
				Read Committed
				Repeatable Read
				Serializable
		Durability
		Read-only transactions
			Read-only transaction routing
		Transaction boundaries
			Distributed transactions
				Two-phase commit
			Declarative transactions
		Application-level transactions
			Pessimistic and optimistic locking
				Pessimistic locking
				Optimistic locking
II JPA and Hibernate
	Why JPA and Hibernate matter
		The impedance mismatch
		JPA vs. Hibernate
		Schema ownership
		Entity state transitions
		Write-based optimizations
		Read-based optimizations
		Wrap-up
	Connection Management and Monitoring
		JPA connection management
		Hibernate connection providers
			DriverManagerConnectionProvider
			C3P0ConnectionProvider
			HikariCPConnectionProvider
			DatasourceConnectionProvider
			Connection release modes
		Monitoring connections
			Hibernate statistics
				Customizing statistics
		Statement logging
			Statement formatting
			Statement-level comments
			Logging parameters
				DataSource-proxy
				P6Spy
	Mapping Types and Identifiers
		Types
			Primitive types
			String types
			Date and Time types
			Numeric types
			Binary types
			UUID types
			Other types
			Custom types
		Identifiers
			UUID identifiers
				The assigned generator
			The legacy UUID generator
				The newer UUID generator
			Numerical identifiers
				Identity generator
				Sequence generator
				Table generator
				Optimizers
					The hi/lo algorithm
					The default sequence identifier generator
					The default table identifier generator
					The pooled optimizer
					The pooled-lo optimizer
				Optimizer gain
					Sequence generator performance gain
					Table generator performance gain
				Identifier generator performance
	Relationships
		Relationship types
		@ManyToOne
		@OneToMany
			Bidirectional @OneToMany
			Unidirectional @OneToMany
			Ordered unidirectional @OneToMany
			@OneToMany with @JoinColumn
			Unidirectional @OneToMany Set
		@ElementCollection
			@ElementCollection List
			@ElementCollection Set
		@OneToOne
			Unidirectional @OneToOne
			Bidirectional @OneToOne
		@ManyToMany
			Unidirectional @ManyToMany List
			Unidirectional @ManyToMany Set
			Bidirectional @ManyToMany
			The @OneToMany alternative
		Hypersistence Optimizer
			Testimonials
	Inheritance
		Single table
			Data integrity constraints
		Join table
		Table-per-class
		Mapped superclass
	Flushing
		Flush modes
		Events and the action queue
			Flush operation order
		Dirty Checking
			The default dirty checking mechanism
				Controlling the Persistence Context size
			Bytecode enhancement
	Batching
		Batching insert statements
		Batching update statements
		Batching delete statements
	Fetching
		DTO projection
			DTO projection pagination
			Native query DTO projection
		Query fetch size
		Fetching entities
			Direct fetching
				Fetching a Proxy reference
				Natural identifier fetching
			Query fetching
			Fetching associations
				FetchType.EAGER
				FetchType.LAZY
					The N+1 query problem
					How to catch N+1 query problems during testing
					LazyInitializationException
					The Open Session in View Anti-Pattern
					Temporary Session Lazy Loading Anti-Pattern
				Associations and pagination
			Attribute lazy fetching
			Fetching subentities
		Entity reference deduplication
		Query plan cache
	Caching
		Caching flavors
		Cache synchronization strategies
			Cache-aside
			Read-through
			Write-invalidate
			Write-through
			Write-behind
		Database caching
		Application-level caching
			Entity aggregates
			Distributed key-value stores
			Cache synchronization patterns
			Synchronous updates
			Asynchronous updates
				Change data capture
		Second-level caching
			Enabling the second-level cache
			Entity cache loading flow
			Entity cache entry
				Entity reference cache store
			Collection cache entry
			Query cache entry
			Cache concurrency strategies
				READ_ONLY
					Inserting READ_ONLY cache entries
					Updating READ_ONLY cache entries
					Deleting READ_ONLY cache entries
				NONSTRICT_READ_WRITE
					Inserting NONSTRICT_READ_WRITE cache entries
					Updating NONSTRICT_READ_WRITE cache entries
					Risk of inconsistencies
					Deleting NONSTRICT_READ_WRITE cache entries
				READ_WRITE
					Inserting READ_WRITE cache entries
					Updating READ_WRITE cache entries
					Deleting READ_WRITE cache entries
					Soft locking concurrency control
				TRANSACTIONAL
					XA_Strict mode
					XA mode
					Inserting TRANSACTIONAL cache entries
					Updating TRANSACTIONAL cache entries
					Deleting TRANSACTIONAL cache entries
			Query cache strategy
				Tablespace query cache invalidation
				Native SQL statement query cache invalidation
	Concurrency Control
		Hibernate optimistic locking
			The implicit optimistic locking mechanism
				Resolving optimistic locking conflicts
				Splitting entities
				Versionless optimistic locking
					OptimisticLockType.DIRTY update caveat
		The explicit locking mechanism
			PESSIMISTIC_READ and PESSIMISTIC_WRITE
				Lock scope
				Lock timeout
			LockModeType.OPTIMISTIC
				Inconsistency risk
			LockModeType.OPTIMISTIC_FORCE_INCREMENT
			LockModeType.PESSIMISTIC_FORCE_INCREMENT
III JOOQ
	Why jOOQ matters
		How jOOQ works
		DML statements
		Java-based schema
		Upsert
			Oracle
			SQL Server
			PostgreSQL
			MySQL
		Batch updates
		Inlining bind parameters
		Complex queries
		Stored procedures and functions
		Streaming
		Keyset pagination




نظرات کاربران