7+ ΠΏΡΠ΅Π²ΠΎΡΡ ΠΎΠ΄Π½ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ / Π₯Π°Π±Ρ
ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΠ°ΡΡΠΈ 8 Excellent Tools for Optimizing Your Images
Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π° ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΠΏΠ΅ΡΠ΅ΡΡΠ°Π» ΡΠ°Π±ΠΎΡΠ°ΡΡ. ΠΠΎ Ρ
Π°Π±ΡΠΎΠ²ΡΠ°Π½Π΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΠ»ΠΈ Π΅ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Ρ
ΠΎΡΠΎΡΠΈΡ
ΡΠ΅ΡΠ΅Π½ΠΈΠΉ!
ΠΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΏΡΠΎΡΡΡΡ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΡΠΌΠ΅Π½ΡΡΠΈΡΡ Π²ΡΠ΅ΠΌΡ ΠΎΡΠΊΠ»ΠΈΠΊΠ° ΡΡΡΠ°Π½ΠΈΡ Π½Π° Π²Π°ΡΠ΅ΠΌ ΡΠ°ΠΉΡΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ.
ΠΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΡ
ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΠΏΠΎΠΌΠΎΠ³Π°ΡΡΠΈΡ
ΡΠΌΠ΅Π½ΡΡΠΈΡΡ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Π²Ρ Π½Π°ΠΉΠ΄Π΅ΡΠ΅ ΡΠ΄ΠΎΠ±Π½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ Π΄Π»Ρ Π²Π΅Π±Π° Π½Π°ΡΡΠΎΠ»ΡΠΊΠΎ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΡ
ΠΏΠΎ Π²Π΅ΡΡ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.
ΠΠ±Π·ΠΎΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² β ΠΏΠΎΠ΄ ΠΊΠ°ΡΠΎΠΌ.
1. Smush.it!
Smush.it ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΡΠΌΠ°ΡΠ° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΡΡΠΎΠ±Ρ ΡΠ΄Π°Π»ΠΈΡΡ Π½Π΅Π½ΡΠΆΠ½ΡΠ΅ Π±Π°ΠΉΡΡ ΠΈΠ· ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ. ΠΠ½Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Β«Π±Π΅Π· ΠΏΠΎΡΠ΅ΡΡΒ», ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΠ΅Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, Π½Π΅ ΠΌΠ΅Π½ΡΠ΅Ρ Π²Π½Π΅ΡΠ½ΠΈΠΉ Π²ΠΈΠ΄ ΠΈΠ»ΠΈ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ. Smush.it ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΠ΅. Π ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΡΠΎΠΎΠ±ΡΠ°Π΅ΡΡΡ, ΡΠΊΠΎΠ»ΡΠΊΠΎ Π±Π°ΠΉΡ Π±ΡΠ΄Π΅Ρ ΡΡΠΊΠΎΠ½ΠΎΠΌΠ»Π΅Π½ΠΎ Π·Π° ΡΡΠ΅Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΡΡΠ°Π½ΠΈΡ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π·Π°Π³ΡΡΠΆΠ°Π΅ΠΌΡΠΉ ΡΠ°ΠΉΠ» Zip Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠΌΠΈ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ.
2.RIOT
RIOT β Π°Π±Π±ΡΠ΅Π²ΠΈΠ°ΡΡΡΠ° ΠΎΡ ΠΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π Π°Π΄ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ. ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ Windows, ΠΊΠΎΡΠΎΡΡΠΉ Π΄ΠΎΡΡΡΠΏΠ½Π° ΠΊΠ°ΠΊ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ IrfanView. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ JPG, PNG ΠΈ GIF ΡΠ°ΠΉΠ»Ρ ΠΈ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎ Π²ΡΡΠ΅Π·Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ Π΄Π»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅Π³ΠΎ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΡ ΡΠ°ΠΉΠ»Π°. Π’Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΡΡΠΈΠ»ΠΈΡΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ Π²ΠΈΠ΄Ρ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠ²ΠΎΡΠΎΡ ΠΈ ΠΎΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅.
3.PNGOUT
PNGOUT ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ, Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΠΌ, Π±Π΅Π· ΠΈΠ·Π»ΠΈΡΠ΅ΡΡΠ², ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π²Π°ΡΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ. PNGOUT ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ Windows ΠΈΠ»ΠΈ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅ ΠΡΠΏΠΎΠ»Π½ΠΈΡΡ. ΠΠ½Π° ΠΈΠΌΠ΅Π΅Ρ ΡΠΈΡΠΎΠΊΠΈΠΉ Π²ΡΠ±ΠΎΡ Π½Π°ΡΡΡΠΎΠ΅ΠΊ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΡΠΆΠ°ΡΠΈΡ ΡΠ°ΠΉΠ»Π°ΠΎΠ². ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΈΠ· ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠΎΡΠΌΠ°ΡΠΎΠ² ΡΠ°ΠΉΠ»ΠΎΠ² (ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ JPG, GIF ΠΈ PNG) ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ.
Π pngout ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΊΠ»ΡΡΠΈΠΊ /zl121 Π΄Π»Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ ΡΠΎ ΡΡΠ°ΡΡΠΌΠΈ ΠΏΠ°ΡΡΠ΅ΡΠ°ΠΌΠΈ png.
Π§ΡΠΎΠ±Ρ ΠΏΠ΅ΡΠ΅ΠΏΠ°ΠΊΠΎΠ²Π°ΡΡ jar ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ kzip Ρ ΡΠ΅ΠΌ ΠΆΠ΅ ΠΊΠ»ΡΡΠΎΠΌ /zl121.
Π pngout, ΠΈ kzip Π½Π°ΠΏΠΈΡΠ°Π» Ken Silverman.
4.Online Image Optimizer
Online Image Optimizer ΠΎΡ Dynamic Drive ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π²Π΅Π±-ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ ΡΠΆΠ°ΡΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ ΡΡΡΠ»ΠΊΡ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ, ΠΈΠ»ΠΈ Π·Π°Π³ΡΡΠ·ΠΈΡΡ Π΅Π³ΠΎ ΠΈΠ· Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΈ. ΠΡΠΎΠΌΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ±ΡΠ°ΡΡ ΡΠΈΠΏ ΠΈΡΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° (ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΡΠΎΡ ΠΆΠ΅ ΡΠΈΠΏ ΡΠ°ΠΉΠ»Π°). ΠΡΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡ ΡΠ°ΠΉΠ»Π° β 300 ΠΠ.
5.SuperGIF
SuperGIF ΡΡΠΎ Π±Π΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ ΡΡΠΈΠ»ΠΈΡΠ° Π΄Π»Ρ Windows ΠΈ Mac OS, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ GIF. ΠΠΌΠ΅Π΅Ρ ΠΈΠ½ΡΡΠΈΡΠΈΠ²Π½ΠΎ ΠΏΠΎΠ½ΡΡΠ½ΡΠΉ ΠΈ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, ΠΌΠΎΠΆΠ΅Ρ ΡΠΆΠΈΠΌΠ°ΡΡ GIF Π½Π° 50% ΠΈ Π±ΠΎΠ»ΡΡΠ΅. Π Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, Π½ΠΎ Π² ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠΌ ΠΈΠΌΠ΅Π΅Ρ ΡΠ΅ ΠΆΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΡΠΎ ΠΈ ΠΊΠΎΠΌΠΌΠ΅ΡΡΠ΅ΡΠΊΠ°Ρ Π²Π΅ΡΡΠΈΡ ($ 29,95), Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ.
6.PNGGauntlet
PNGGauntlet β ΡΡΠΎ .NET ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ PNGOUT. ΠΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΎ Π΄Π»Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ JPG, GIF, TGA, PCX, BMP ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ PNG ΡΠ°ΠΉΠ»ΠΎΠ². PNGGauntlet ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΡΠ΅Ρ , ΠΊΡΠΎ Π½Π΅ ΠΏΡΠΈΠ²ΡΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ ΡΡΡΠΎΠΊΡ, Π½ΠΎ Π²ΡΠ΅ ΠΆΠ΅ Ρ ΠΎΡΠ΅Π» Π±Ρ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΠ»ΡΡΡΠ΅Π½Π½ΡΠΉ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ PNGOUT.
7.SuperPNG
SuperPNG β Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΠΉ ΠΏΠ»Π°Π³ΠΈΠ½ Π΄Π»Ρ Photoshop, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΡΡΡ PNG Π² Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½ΠΎΠΌ Π²ΠΈΠ΄Π΅. ΠΠ½Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ 16-Π±ΠΈΡΠ½ΠΎΠ³ΠΎ ΡΠ²Π΅ΡΠ°, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠΆΠ°ΡΠΈΡ, Π³Π°ΠΌΠΌΠ°-ΠΊΠΎΡΡΠ΅ΠΊΡΠΈΠΈ, ΠΈ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ .
P.S. Π ΡΠ΅ΠΏΠ΅ΡΡ β ΡΠΎ, ΡΡΠΎ ΠΏΠΎΡΠΎΠ²Π΅ΡΠΎΠ²Π°Π»ΠΈ Ρ Π°Π±ΡΠΎΠ²ΡΠ°Π½Π΅.
8.Pngcrush (ΡΠΏΠ°ΡΠΈΠ±ΠΎ UUSER)
ΠΠ°ΡΡΠΈΠ½ΠΊΠΈ Π½Π΅Ρ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π΄Π°Π½Π½ΡΠΉ ΠΏΠ»Π°Π³ΠΈΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ. Π Π°Π±ΠΎΡΠ°Π΅Ρ Π² UNIX, LINUX Π° ΡΠ°ΠΊΠΆΠ΅ Π² MS-DOS.
ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΠ΅Ρ PNG. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠΆΠ°ΡΠΈΡ, ΠΌΠΎΠΆΠ΅Ρ ΡΠ΄Π°Π»ΡΡΡ Π½Π΅ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ Π±Π»ΠΎΠΊΠΈ.
Pngcrush ΠΈΠΌΠ΅Π΅Ρ ΠΎΡΠΊΡΡΡΡΠΉ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄.
9. OptiPNG (ΡΠΏΠ°ΡΠΈΠ±ΠΎ Razunter)
OptiPNG β ΠΊΠ°ΠΊ ΠΈ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠ· Π½Π°Π·Π²Π°Π½ΠΈΡ, ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡ PNG. ΠΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠΎΡΠΌΠ°ΡΡ (BMP, GIF, PNM ΠΈ TIFF) Π² ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ PNG, ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ ΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΉ.
10.punypng (ΡΠΏΠ°ΡΠΈΠ±ΠΎ Razunter)
ΠΠ΅Π±- ΡΠ΅ΡΠ²ΠΈΡ ΠΏΠΎ ΡΠΆΠ°ΡΠΈΡ PNG, JPEG ΠΈ GIF.
ΠΠ· ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ
ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ:
ΠΡΠ΅Π΄ΠΏΡΠΎΡΠΌΠΎΡΡ ΠΊΠ°ΡΠ΅ΡΡΠ²Π° ΠΈΡΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ.
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π²Π°ΡΠ΅Π³ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Ρ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΏΠΎΡΠ»Π΅ 15 ΠΌΠΈΠ½. ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΠ½Π²Π΅ΡΡΠ°ΡΠΈΠΈ.
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΠΈ.
11.ImageOptim (ΡΠΏΠ°ΡΠΈΠ±ΠΎ Conquearse)
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Mac-OC. ΠΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ PNG, JPEG ΠΈ GIF Π°Π½ΠΈΠΌΠ°ΡΠΈΡ.
ImageOptim ΡΠΎΡΠ΅ΡΠ°Π΅Ρ Π² ΡΠ΅Π±Π΅ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ: AdvPNG ΠΎΡ AdvanceCOMP, OptiPNG, Pngcrush, JpegOptim, jpegtran ΠΎΡ Libjpeg, Gifsicle ΠΈ ΠΎΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ PNGOUT.
ΠΡΠΊΡΡΡΡΠΉ ΠΈΡΡ
ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ Π½Π° ΡΡΠ»ΠΎΠ²ΠΈΡΡ
GPLv2.
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ΄ΠΎΠ±Π½ΡΠΉ drag’n’drop ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π² ΡΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ.
12. pngre (ΡΠΏΠ°ΡΠΈΠ±ΠΎ homm)
ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡ Π³ΡΠ°ΡΠΈΠΊΠΈ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ PNG. Π’Π°ΠΊΠΆΠ΅ ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΡΠ΅Ρ GIF ΠΈ BMP Π² PNG.
ΠΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ½ΠΊΠΎ Π²ΡΡΡΠ½ΡΡ ΠΈΠ»ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠ°Π·ΠΌΠ΅Ρ PNG ΡΠ°ΠΉΠ»Π°.
13. pngquant (ΡΠΏΠ°ΡΠΈΠ±ΠΎ homm)
Π Π°Π±ΠΎΡΠ°Π΅Ρ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ. Π£ΠΌΠ΅Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎ, ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΡΠ΅Ρ 32-Ρ Π±ΠΈΡΠ½ΡΠ΅ PNG Ρ Π°Π»ΡΡΠ°-ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΡΡ Π² 8-ΠΈ Π±ΠΈΡΠ½ΡΠ΅ ΠΏΠ°Π»ΠΈΡΡΠΎΠ²ΡΠ΅ PNG Ρ Π°Π»ΡΡΠ°ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΡΡ. ΠΠΎ Π΄Π΅Π»Π°Π΅Ρ ΡΡΠΎ ΠΎΡΠ΅Π½Ρ Ρ ΠΎΡΠΎΡΠΎ, ΠΌΠ½ΠΎΠ³ΠΎ Π»ΡΡΡΠ΅ Fireworks, Ρ ΠΎΡΡ ΡΠΎΠΆΠ΅ Π½Π΅ Π±Π΅Π· ΠΏΡΠΎΠ±Π»Π΅ΠΌ.
14. PictureBeaver (ΡΠΏΠ°ΡΠΈΠ±ΠΎ Carl_Linnaeus)
ΠΡΠΈΠΌΠ΅Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ:
ΠΠ²ΡΠΎΡ β ΠΡΡΠ΅ΠΌ Π‘Π°ΠΏΠ΅Π³ΠΈΠ½
GIF Π±Π΅Π· Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΈΡΡΡ Π² PNG, Π΅ΡΠ»ΠΈ ΡΠ°ΠΊΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ Π²ΡΡ ΠΎΠ΄ΡΡ ΠΌΠ΅Π½ΡΡΠ΅. ΠΠ»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΠ΅ ΡΡΠΈΠ»ΠΈΡΡ OptiPNG, jpegtran ΠΈ Gifsicle.
15. Color quantizer (ΡΠΏΠ°ΡΠΈΠ±ΠΎ Subdivision)
Color quantizer β ΡΡΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ°Ρ Π»Π΅Π³ΠΊΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ web.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ:
ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ²Π΅ΡΠΎΠ²
ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π·Π°ΠΏΠΈΡΠΈ png8 Ρ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΡΡ
Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°Π΄Π°Π²Π°ΡΡ ΠΌΠ°ΡΠΊΡ ΠΊΠ°ΡΠ΅ΡΡΠ²Π° Π΄Π»Ρ Π²Π°ΠΆΠ½ΡΡ
ΡΡΠ°ΡΡΠΊΠΎΠ²
ΡΠ΄ΠΎΠ±Π½ΠΎΠ΅ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ°Π»ΠΈΡΡΡ
Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠΎΠ΄Π±ΠΎΡ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΡ
ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Π΄Π»Ρ PNGOUT
16. Gifsicle (ΡΠΏΠ°ΡΠΈΠ±ΠΎ AndrewTishkin)
ΠΡΠΎ β ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ GIF-ΠΎΠΊ. Π ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ β Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ
UNIX. ΠΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π° ΠΈ ΠΏΠΎΠ΄ Win, Π½ΠΎ ΡΡΠ° Π²Π΅ΡΡΠΈΡ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ.
GΠ°ΡΠ° ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ²:
ΠΠ±ΡΠ΅Π·Π°Π΅ΠΌ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΡΠ΅ ΡΠ°ΠΌΠΊΠΈ:
gifsicle —crop-transparency src.gif > dest.gif
Π‘ΠΆΠΈΠΌΠ°Π΅ΠΌ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ (ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎβ¦ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π±Π°ΠΉΡ π GIF:
gifsicle -O2 src.gif > dest.gif
17. jpegtran (ΡΠΏΠ°ΡΠΈΠ±ΠΎ AndrewTishkin)
Π ΡΡΠΎ β Π΄Π»Ρ JPEG. ΠΡΠΈΡΠΈΠ°Π»ΡΠ½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΎΡ Independent JPEG Group.
18. Webify (Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ zeka)
ΠΠ±ΠΎΠ»ΠΎΡΠΊΠ° Π΄Π»Ρ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΡ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΡ ΡΡΠΈΠ»ΠΈΡ β pngout, jpegtran, gifsicle, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡ ΠΊΠ°ΡΠ΅ΡΡΠ²Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΡΠ΄Π°Π»ΡΡΡ Π»ΠΈΡΠ½ΡΡ ΠΌΠ΅ΡΠ°ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ ΡΠΆΠ°ΡΠΈΡ.
19. PngOptimizer (Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Enot_23)
ΠΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΠΎΠΏΡΠΈΠΌΠ°ΠΉΠ·Π΅Ρ Π΄Π»Ρ Windows.
Π£ΠΆΠΈΠΌΠ°Π΅Ρ PNG, ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡ Π² PNG ΠΈΠ· BMP, GIF, TGA. ΠΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄Π΅Π»Π°ΡΡ PNG-ΡΠΊΡΠΈΠ½ΡΠΎΡΡ.
20. TweakPNG (CΠΏΠ°ΡΠΈΠ±ΠΎ stalkers)
TweakPNG ΡΡΠΎ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²Π°Ρ ΡΡΠΈΠ»ΠΈΡΠ° Π΄Π»Ρ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ PNG ΡΠ°ΠΉΠ»ΠΎΠ² ΠΉ. ΠΠ»Ρ Windows 2000 ΠΈΠ»ΠΈ Π²ΡΡΠ΅. ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Ρ
ΠΎΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π·Π±ΠΈΡΠ°ΡΡΡΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ PNG.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΈΠ»ΠΈΡΡ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ ΡΠ΄Π°Π»ΠΈΡΡ. ΠΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΊΠΈΠ½ΡΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΡΠΈΠΏΠ° Β«edited in Adobe PhotshopΒ». ΠΠΎΠΌΠΈΠΌΠΎ ΠΈΠ·Π±Π°Π²Π»Π΅Π½ΠΈΡ ΠΎΡ Π³Π»ΡΠΊΠΎΠ², ΠΏΠΎΠ»ΡΡΠΈΠΌ ΡΠ°ΠΊΠΆΠ΅ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ Π²ΡΠΈΠ³ΡΡΡ Π² ΡΠ°Π·ΠΌΠ΅ΡΠ΅.
ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π΄Π»Ρ web / Π₯Π°Π±Ρ
Π ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΡΠ°ΡΠ΅ΠΉ ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Π΄Π»Ρ ΡΠ΅ΡΠ°ΠΉΠ·Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ.
ΠΡΠΎΠ±Π»Π΅ΠΌΠ°
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ½Π°ΡΠ°Π»Π° ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌΡΡ Π·Π°ΡΠ΅ΠΌ ΠΌΡ Π΄Π΅Π»Π°Π»ΠΈ ΡΠ΅ΡΠ°ΠΉΠ· ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ. ΠΡ, ΠΊΠ°ΠΊ Π²Π΅Π± ΡΠ΅ΡΠ²ΠΈΡ, Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΎΠ²Π°Π½Ρ Π² ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π±ΡΡΡΡΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠ΅ ΡΡΡΠ°Π½ΠΈΡ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΡΠΎ Π½ΡΠ°Π²ΠΈΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ΠΈ ΠΏΠΎΠ²ΡΡΠ°Π΅Ρ ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡ. ΠΡΠ»ΠΈ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΠΉ ΠΈΠ»ΠΈ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ, ΡΠΎ ΠΊΡΠ°ΠΉΠ½Π΅ Π²Π°ΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΡΡΡΠ°Π½ΠΈΡΡ Π±ΡΠ»ΠΈ Π»Π΅Π³ΠΊΠΈΠΌΠΈ, Π½Π΅ ΡΡΠ°ΡΠΈΠ»ΠΈ ΠΏΠΎΠ½Π°ΠΏΡΠ°ΡΠ½Ρ ΡΡΠ°ΡΠΈΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΡΠ΅ΡΡΡΡΡ Π΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°. ΠΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΡΠ½ΠΊΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠΉ Π² ΡΡΠΎΠΌ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ.
ΠΡ ΡΠ΅ΡΠ°Π΅ΠΌ Π΄Π²Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ. ΠΠ΅ΡΠ²Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ°ΡΡΠΎ Π½Π΅ ΠΏΠ΅ΡΠ΅ΠΆΠ°ΡΡ ΠΏΠΎΠ΄ Π½ΡΠΆΠ½ΠΎΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, ΡΠΎ Π΅ΡΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΊΠ°ΡΠ°ΡΡ Π½Π΅Π½ΡΠΆΠ½ΡΠ΅ Π΅ΠΌΡ Π΄Π°Π½Π½ΡΠ΅, Π½ΠΎ ΠΈ ΡΡΠ°ΡΠΈΡΡ ΡΠ΅ΡΡΡΡΡ CPU Π½Π° ΡΠ΅ΡΠ°ΠΉΠ· ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ ΡΠΈΠ»Π°ΠΌΠΈ Π±ΡΠ°ΡΠ·Π΅ΡΠ°. Π Π΅ΡΠ΅Π½ΠΈΠ΅: ΠΎΡΠ΄Π°Π²Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ Π² ΡΠΎΠΌ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅.
ΠΡΠΎΡΠ°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Ρ ΠΎΡΠΎΡΠΎ ΡΠΆΠ°ΡΡ, ΡΠΎ Π΅ΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½Π΅Π΅, ΡΡΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΡ ΡΠΊΠΎΡΠΎΡΡΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΡΡΠ°Π½ΠΈΡΡ Π±Π΅Π· ΡΡΠ±ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠΎΡΠ΅ΡΠΈ ΠΊΠ°ΡΠ΅ΡΡΠ²Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ. Π Π΅ΡΠ΅Π½ΠΈΠ΅: ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ ΠΏΠ΅ΡΠ΅Π΄ ΠΎΡΠ΄Π°ΡΠ΅ΠΉ ΠΊΠ»ΠΈΠ΅Π½ΡΡ.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ°, ΠΊΠ°ΠΊ Π΄Π΅Π»Π°ΡΡ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° Π³Π»Π°Π²Π½ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ°, ΠΊΠ°ΠΊ github.com. ΠΡΠΈ Π²Π΅ΡΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ 2 ΠΠ±, 1.2 ΠΈΠ· Π½ΠΈΡ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈ Π½Π΅ Π·Π°Π³ΡΡΠΆΠ°ΡΡ.
ΠΡΠΎΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ β Π½Π°Ρ Π₯Π°Π±Ρ. Π‘ΠΊΡΠΈΠ½ΡΠΎΡ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡ Π½Π΅ Π±ΡΠ΄Ρ, ΡΡΠΎ Π±Ρ Π½Π΅ ΡΠ°ΡΡΡΠ³ΠΈΠ²Π°ΡΡ ΡΡΠ°ΡΡΡ, ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅. ΠΠ° Ρ Π°Π±ΡΠ΅ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ°ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π° Π½ΡΠΆΠ½ΠΎΠ΅, Π½ΠΎ Π½Π΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΡΡ ΠΈΡ . ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ Π±Ρ ΡΠΎΠΊΡΠ°ΡΠΈΡΡ ΠΈΡ ΡΠ°Π·ΠΌΠ΅Ρ Π½Π° 650 ΠΠ± (50%).
ΠΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΌΠ΅ΡΡΠ°Ρ Π½Π° ΡΠ°ΠΉΡΠ΅ Π½ΡΠΆΠ½Ρ ΡΠΌΠ΅Π½ΡΡΠ΅Π½Π½ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΡΠΎΠ±Ρ Π² Π»Π΅Π½ΡΠ΅ Π½ΠΎΠ²ΠΎΡΡΠ΅ΠΉ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΠΌΠ΅Π½ΡΡΠ΅Π½Π½ΡΡ Π²Π΅ΡΡΠΈΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ Π½ΠΎΠ²ΠΎΡΡΠΈ. ΠΡ ΡΡΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌβ Π½Π° Π½Π°ΡΠ΅ΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅ Ρ ΡΠ°Π½ΠΈΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ° Π² ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΌ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅, Π° ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π²ΡΡΠ°Π²ΠΈΡΡ Π΅Π΅ ΠΎΡΡΠ΅ΡΠ°ΠΉΠΆΠ΅Π½Π½ΡΡ Π²Π΅ΡΡΠΈΡ Π½Π°Π΄ΠΎ Π΄ΠΎΠΏΠΈΡΠ°ΡΡ Π² ΠΊΠΎΠ½Π΅Ρ ΡΡΠ»Π° ΡΡΠ΅Π±ΡΠ΅ΠΌΠΎΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π· «@». Π’ΠΎΠ³Π΄Π° Π·Π°ΠΏΡΠΎΡ ΠΎΡΠΏΡΠ°Π²ΠΈΡΡΡ Π½Π΅ Π·Π° ΡΠ°ΠΉΠ»ΠΎΠΌ, Π° Π½Π° Π½Π°Ρ ΡΠ΅ΡΠ°ΠΉΠ·ΡΡΠΈΠΉ Π±ΡΠΊΠ΅Π½Π΄ ΠΈ Π²Π΅ΡΠ½Π΅Ρ ΠΎΡΡΠ΅ΡΠ°ΠΉΠΆΠ΅Π½Π½ΡΡ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π²Π΅ΡΡΠΈΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ.
Π Π°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ
ΠΡΠ΅, ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΡΠΊΠ°Π·Π°Π½ΠΎ Π΄Π°Π»Π΅Π΅ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ JPEG ΠΈ PNG ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌ, Ρ.ΠΊ. ΡΡΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅ ΡΠΎΡΠΌΠ°ΡΡ Π² ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅.
ΠΠ±ΠΈΠ² Π² google ΡΡΠΎ-ΡΠΎ Π²ΡΠΎΠ΄Π΅ Β«image resize backendΒ» Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅, ΡΡΠΎ Π² ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π΅ ΡΠ»ΡΡΠ°Π΅Π² ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Nginx, Π΄ΡΡΠ³Π°Ρ ΡΠ°ΡΡΡβ ΡΡΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠ°ΠΌΠΎΠΏΠΈΡΠ½ΡΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ, ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ Node.js.
ΠΠ· nginx, Π° ΡΠΎΡΠ½Π΅Π΅ ΠΈΠ· libgd, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΌΠΎΠ΄ΡΠ»Π΅ nginxβΠ° ΠΌΡ ΡΠΌΠΎΠ³Π»ΠΈ Π²ΡΠΆΠ°ΡΡ Π½Π° ΡΠ΅ΡΡΠΎΠ²ΠΎΠΉ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ΅ 63 RPS, ΡΡΠΎ Π½Π΅ΠΏΠ»ΠΎΡ ΠΎ, Π½ΠΎ Ρ ΠΎΡΠ΅Π»ΠΎΡΡ Π±Ρ Π±ΡΡΡΡΠ΅Π΅ ΠΈ Π±ΠΎΠ»ΡΡΠ΅ Π³ΠΈΠ±ΠΊΠΎΡΡΠΈ. Graphicsmagick ΡΠΎΠΆΠ΅ Π½Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ, Ρ.ΠΊ. Π΅Π³ΠΎ ΡΠΊΠΎΡΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π½ΠΈΠ·ΠΊΠ°Ρ. Π ΡΠΎΠΌΡ ΠΆΠ΅ ΠΎΠ±Π° ΡΡΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π²ΡΠ΄Π°ΡΡ Π½Π΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ. ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ Π΄ΡΡΠ³ΠΈΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π½Π° Node ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Sharp Π΄Π»Ρ ΡΠ΅ΡΠ°ΠΉΠ·Π°, MozJPEG Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ JPEG ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ pngquant Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ PNG.
ΠΡ ΠΈ ΡΠ°ΠΌΠΈ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΄ΠΎΠ»Π³ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈΡΡ ΡΠ°ΠΌΠΎΠΏΠΈΡΠ½ΠΎΠΉ ΡΠ²ΡΠ·ΠΊΠΎΠΉ ΠΈΠ· NodβΡ, Libvips ΠΈ MozJPEG c pngquant, Π½ΠΎ Π² ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π΄Π½Π΅ΠΉ Π·Π°Π΄Π°Π»ΠΈΡΡ Π²ΠΎΠΏΡΠΎΡΠΎΠΌβ Β«Π ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ΅ΡΠ°ΠΉΠ· Π±ΡΡΡΡΠ΅Π΅ ΠΈ ΠΌΠ΅Π½Π΅Π΅ ΡΡΠ΅Π±ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΌ ΠΊ ΡΠ΅ΡΡΡΡΠ°ΠΌ?Β».
Π‘ΠΏΠΎΠΉΠ»Π΅Ρ: ΠΌΠΎΠΆΠ½ΠΎ. π
Π’Π΅ΠΏΠ΅ΡΡ Ρ ΠΎΡΠΎΡΠΎ Π±Ρ Π²ΡΡΡΠ½ΠΈΡΡ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠΊΠΎΡΠΈΡΡ Π½Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠ·ΡΡΠΈΠ² ΠΊΠΎΠ΄ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΡ Π²ΡΡΡΠ½ΠΈΠ»ΠΈ, ΡΡΠΎ imagemin, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ Π΄Π»Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ, Π° Π² ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ Π΅Π³ΠΎ ΠΏΠ»Π°Π³ΠΈΠ½Ρ MozJPEG ΠΈ pngquant ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Π΄Π΅ΡΠ³Π°ΡΡ ΠΎΠ΄Π½ΠΎΠΈΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠΈΠ»ΠΈΡΡ ΡΠ΅ΡΠ΅Π· os.Exec. ΠΡΠ΄Π΅ΠΌ ΡΡΠΎ Π΄Π΅Π»ΠΎ ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎ Π²ΡΠΏΠΈΠ»ΠΈΠ²Π°ΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π±ΠΈΠ½Π΄ΠΈΠ½Π³ΠΈ ΠΊ CΠΈ’ΡΠ½ΡΠΌ Π»ΠΈΠ±Π°ΠΌ. ΠΠ»Ρ ΡΠ΅ΡΠ°ΠΉΠ·Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ Sharp, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π±ΠΈΠ½Π΄ΠΈΠ½Π³ ΠΊ Π‘ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ Libvips.
ΠΠ°ΡΠ° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ
ΠΡΠ³Π»Π΅ΠΆ ΠΏΠΎΠΊΠ°Π·Π°Π», ΡΡΠΎ Libvips ΠΏΠΎ ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ Π»ΠΈΠ΄Π΅Ρ ΠΏΠΎ ΡΠΊΠΎΡΠΎΡΡΠΈ ΠΈ ΠΊΠΎΠ½ΠΊΡΡΠΈΡΠΎΠ²Π°ΡΡ Ρ Π½ΠΈΠΌ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ OpenCV. ΠΠ½Π°ΡΠΈΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Libvips ΠΈ Π² Π½Π°ΡΠ΅ΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ, ΡΡΠΎ ΡΠΆΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Π½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΎΠ½ ΠΈΠΌΠ΅Π΅Ρ Π³ΠΎΡΠΎΠ²ΡΠΉ Π±ΠΈΠ½Π΄ΠΈΠ½Π³ Π΄Π»Ρ Go. ΠΠΎΡΠ° ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΎΡΠΎΡΠΈΠΏ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΡΠΎ ΠΈΠ· ΡΡΠΎΠ³ΠΎ Π²ΡΠΉΠ΄Π΅Ρ.
ΠΠ°ΡΡ ΡΠ»ΠΎΠ² ΠΎ ΡΠΎΠΌ, ΠΏΠΎΡΠ΅ΠΌΡ Π΄Π»Ρ ΠΏΠΎΠΏΡΡΠΊΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π±ΡΠ» Π²ΡΠ±ΡΠ°Π½ Golang. ΠΠΎ ΠΏΠ΅ΡΠ²ΡΡ ΠΎΠ½ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π±ΡΡΡΡΡΠΉ, Π²Ρ ΠΆΠ΅ Π΅ΡΠ΅ ΠΏΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΡΠ΄Π΅Π»Π°ΡΡ Π±ΡΡΡΡΡΠΉ ΡΠ΅ΡΠ°ΠΉΠ·. ΠΠΎΠ΄ Π½Π° Π½Π΅ΠΌ Π»Π΅Π³ΠΊΠΎ ΡΠΈΡΠ°ΡΡ ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ. ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π±ΡΠ»Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ Ρ C Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°, Π½Π°ΠΌ ΡΡΠΎ ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΡΡΡ.
ΠΡΡΡΡΠΎ Π½Π°ΠΏΠΈΡΠ°Π»ΠΈ ΠΏΡΠΎΡΠΎΡΠΈΠΏ, ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π»ΠΈ ΠΈ ΠΏΠΎΠ½ΡΠ»ΠΈ, ΡΡΠΎ Π½Π΅ΡΠΌΠΎΡΡΡ Π½Π° Π±ΠΎΠ»ΡΡΠ΅Π΅, ΡΠ΅ΠΌ Π² Sharp, ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΡ ΠΊΡΡΡΠΈΠ»ΠΎΠΊ, Libvips ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ Π²ΡΠ΄Π°Π΅Ρ Π½Π° Π²ΡΡ ΠΎΠ΄ Π½Π΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ. Π‘ ΡΡΠΈΠΌ Π½Π°Π΄ΠΎ ΡΡΠΎ-ΡΠΎ Π΄Π΅Π»Π°ΡΡ. ΠΠΏΡΡΡ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΠΌΡΡ ΠΊΠΎ Π²ΡΠ΅ΠΌΠΎΠ³ΡΡΠ΅ΠΌΡ Π³ΡΠ³Π»Ρ ΠΈ ΡΠ·Π½Π°Π΅ΠΌ, ΡΡΠΎ Π»ΡΡΡΠΈΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΡΡΠΎ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ MozJPEG. Π’ΡΡ Π½Π°ΡΠΈΠ½Π°ΡΡ Π·Π°ΠΊΡΠ°Π΄ΡΠ²Π°ΡΡΡΡ ΡΠΎΠΌΠ½Π΅Π½ΠΈΡ, ΡΡΠΎ ΠΌΡ ΡΠ΅ΠΉΡΠ°Ρ Π½Π°ΠΏΠΈΡΠ΅ΠΌ ΡΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅, ΡΡΠΎ Π±ΡΠ»ΠΎ Π½Π° Node, ΡΠΎΠ»ΡΠΊΠΎ Π½Π° Go. ΠΠΎ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΡΠΈΡΠ°Π² ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ MoZJPEG ΡΠ·Π½Π°Π΅ΠΌ, ΡΡΠΎ ΠΎΠ½Π° ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΡΠΊΠΎΠΌ libjpeg-turbo ΠΈ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠ° Ρ Π½Π΅ΠΉ.
ΠΡΠ³Π»ΡΠ΄ΠΈΡ ΠΎΡΠ΅Π½Ρ ΠΌΠ½ΠΎΠ³ΠΎΠΎΠ±Π΅ΡΠ°ΡΡΠ΅. ΠΠ΅Π»ΠΎ Π·Π° ΠΌΠ°Π»ΡΠΌ β ΡΠΎΠ±ΡΠ°ΡΡ ΡΠ²ΠΎΡ Π²Π΅ΡΡΠΈΡ Libvips, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ jpeg-turbo Π·Π°ΠΌΠ΅Π½Π΅Π½ Π½Π° Π²Π΅ΡΡΠΈΡ ΠΎΡ Mozila. ΠΠ»Ρ ΡΠ±ΠΎΡΠΊΠΈ ΠΌΡ Π²ΡΠ±ΡΠ°Π»ΠΈ Alpine Linux, Ρ.ΠΊ. ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅ ΡΠ°Π²Π½ΠΎ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π»ΠΎΡΡ ΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΠΎΠΊΠ΅ΡΠ° ΠΈ Alpine ΠΈΠΌΠ΅Π΅Ρ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΈΡΡΠ½ΡΠΉ ΡΠΎΡΠΌΠ°Ρ ΠΊΠΎΠ½ΡΠΈΠ³Π° ΠΏΠ°ΠΊΠ΅ΡΠ°, ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ
ΠΎΠΆΠΈΠΉ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ Π² Arch Linux.
ΠΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΡΠΉ JPEG 351×527 79 ΠΠ± |
ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ 351×527 17 ΠΠ± |
---|---|
Π‘ΠΎΠ±ΡΠ°Π»ΠΈ, ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π»ΠΈ. Π’Π΅ΠΏΠ΅ΡΡ Libvips ΡΡΠ°Π·Ρ ΠΏΡΠΈ ΡΠ΅ΡΠ°ΠΉΠ·Π΅ Π²ΡΠ΄Π°Π΅Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π²Π΅ΡΡΠΈΡ. Π’ΠΎ Π΅ΡΡΡ Π² Node Π²Π΅ΡΡΠΈΠΈ Π²Π΅ΡΡΠΈΠΈ ΠΌΡ ΡΠ½Π°ΡΠ°Π»Π° Π΄Π΅Π»Π°Π»ΠΈ ΡΠ΅ΡΠ°ΠΉΠ·, Π° ΠΏΠΎΡΠΎΠΌ Π΅ΡΠ΅ ΡΠ°Π· ΠΏΡΠΎΠΏΡΡΠΊΠ°Π»ΠΈ ΠΊΠ°ΡΡΠΈΠ½ΠΊΡ ΡΠ΅ΡΠ΅Π· decoder-encoder. Π’Π΅ΠΏΠ΅ΡΡ ΠΌΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π΅Π»Π°Π΅ΠΌ ΡΠ΅ΡΠ°ΠΉΠ·.
Π‘ JPEG ΡΠ°Π·ΠΎΠ±ΡΠ°Π»ΠΈΡΡ, Π° ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ Ρ png. ΠΠ»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ Π±ΡΠ»Π° Π½Π°ΠΉΠ΄Π΅Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° libpngquant. ΠΠ½Π° Π½Π΅ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½Π°Ρ, Π½Π΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½Π°Ρ ΡΡΠΈΠ»ΠΈΡΠ° pngquant, ΠΊΠΎΡΠΎΡΠ°Ρ Π±Π°Π·ΠΈΡΡΠ΅ΡΡΡ Π½Π° Π½Π΅ΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΠ΅ΡΠ΅Π½ΠΈΡΡ . Π’Π°ΠΊ ΠΆΠ΅ ΠΊ Π½Π΅ΠΉ Π±ΡΠ» Π½Π°ΠΉΠ΄Π΅Π½ Π±ΠΈΠ½Π΄ΠΈΠ½Π³ Π½Π° Go, Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π·Π°Π±ΡΠΎΡΠ΅Π½Π½ΡΠΉ ΠΈ Ρ ΡΡΠ΅ΡΠΊΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ, ΠΏΡΠΈΡΠ»ΠΎΡΡ Π΅Π³ΠΎ ΡΠΎΡΠΊΠ½ΡΡΡ ΠΏΠΎΡΠΈΠ½ΠΈΡΡ, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅ΠΉ ΠΈ Π²ΡΠ΅ΠΌ ΠΎΡΡΠ°Π»ΡΠ½ΡΠΌ, ΡΡΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π°Π΅Ρ ΠΏΡΠΈΠ»ΠΈΡΠ½ΠΎΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΡ. Libpngquant ΠΌΡ ΡΠΎΠΆΠ΅ ΡΠΎΠ±ΡΠ°Π»ΠΈ Π² Π²ΠΈΠ΄Π΅ Alpine ΠΏΠ°ΠΊΠ΅ΡΠ° Π΄Π»Ρ ΠΏΡΠΎΡΡΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠΎΠΌΡ, ΡΡΠΎ ΡΠ΅ΠΏΠ΅ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΎΡ ΡΠ°Π½ΡΡΡ Π² ΡΠ°ΠΉΠ» Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ c ΠΏΠΎΠΌΠΎΡΡΡ pngquant ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π½Π΅ ΡΠΆΠΈΠΌΠ°ΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΡ ΠΏΡΠΈ ΡΠ΅ΡΠ°ΠΉΠ·Π΅ Π² Libvips, Π° ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π² pngquant. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΠ°Π³ΠΎΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΠ°Π΄ΠΎ Π»ΠΈ Π³ΠΎΠ²ΠΎΡΠΈΡΡ, ΡΡΠΎ ΠΌΡ ΡΠ°ΠΊ ΠΆΠ΅ ΠΎΡΠ΅Π½Ρ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΠΌ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠΎΠΌΡ, ΡΡΠΎ Π²ΡΠ·ΠΎΠ² C Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΡΡΡΡΠ΅Π΅ Π·Π°ΠΏΡΡΠΊΠ° ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΠΎΠΉ ΡΡΠΈΠ»ΠΈΡΡ.
ΠΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΡΠΉ PNG 450×300 200 ΠΠ± |
ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ 450×300 61 ΠΠ± |
---|---|
ΠΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΡΠΉ PNG 351×527 270 ΠΠ± |
ΠΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ 351×527 40 ΠΠ± |
---|---|
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΡΠΎΡΠΎΡΠΈΠΏ Π±ΡΠ» Π½Π°ΠΏΠΈΡΠ°Π½, ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ Π½Π° ΠΌΠΎΠ΅ΠΌ ΠΏΠΊ ΠΈ Π²ΡΠ΄Π°Π²Π°Π» ΠΏΡΠΈΠ»ΠΈΡΠ½ΡΠ΅ 25 RPS Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠΌ Π΄Π²ΡΡ ΡΠ΄Π΅ΡΠ½ΠΎΠΌ ΠΏΡΠΎΡΠ΅, ΡΠΆΠΈΡΠ°Ρ Π²Π΅ΡΡ CPU, Π·Π°Ρ ΠΎΡΠ΅Π»ΠΎΡΡ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΆΠ°ΡΡ ΠΈΠ· Π½Π΅Π³ΠΎ Π½Π° Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠΌ ΠΆΠ΅Π»Π΅Π·Π΅. ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΠΌ ΠΊΠΎΠ΄ Π½Π° ΡΠ΅ΡΡΠΈ ΡΠ΄Π΅ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΠΈΠ½Π΅, Π½Π°ΡΡΠ°Π²Π»ΠΈΠ²Π°Π΅ΠΌ Jmeter ΠΈ WTF??? ΠΠΎΠ»ΡΡΠ°Π΅ΠΌ 30 RPS. ΠΡΠΎΠ±ΡΠ΅ΠΌ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ ΡΡΠΎ Π·Π° ΡΠΈΠ³Π½Ρ.
Libvips ΡΠ°ΠΌ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½ΠΎΡΡΡ, ΡΠΎ Π΅ΡΡΡ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ ΠΈ Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ Π½Π΅ΠΉ ΠΈΠ· Π»ΡΠ±ΠΎΠ³ΠΎ ΠΏΠΎΡΠΎΠΊΠ°. ΠΠΎ Ρ Π½Π°Ρ ΠΏΠΎΡΠ΅ΠΌΡ-ΡΠΎ Libvips ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² 1 ΠΏΠΎΡΠΎΠΊ, ΡΡΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅Ρ Π½Π°Ρ ΠΎΠ΄Π½ΠΈΠΌ ΡΠ΄ΡΠΎΠΌ. ΠΡΠ΅ 1 ΡΠ΄ΡΠΎ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ pngquant. ΠΡΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ, ΡΡΠΎ Π½Π°ΡΠ° ΡΡΠΏΠ΅Ρ Π±ΡΡΡΡΠ°Ρ ΡΠ΅ΡΠ°ΠΉΠ·ΠΈΠ»ΠΊΠ° ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° Π½ΠΎΡΡΠ±ΡΠΊΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°, Π° Π½Π° ΠΎΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Π°Ρ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠΈΠ»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅ ΡΠ΅ΡΡΡΡΡ. π
Π‘ΠΌΠΎΡΡΠΈΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΠΈΠΊΠΈ Π±ΠΈΠ½Π΄ΠΈΠ½Π³Π° ΠΊ Libvips ΠΈ Π²ΠΈΠ΄ΠΈΠΌ, ΡΡΠΎ ΡΠ°ΠΌ CONCURRENCY ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π²ΡΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π² 1 ΠΈΠ·-Π·Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π²ΡΠΈΡ Π² Libvips Π³ΠΎΠ½ΠΎΠΊ Π΄Π°Π½Π½ΡΡ . ΠΠΎ ΡΡΠ΄Ρ ΠΏΠΎ Π±Π°Π³ ΡΡΠ΅ΠΊΠ΅ΡΡ ΡΡΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π΄Π°Π²Π½ΠΎ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Ρ. ΠΡΡΡΠ°Π²ΠΈΠ»ΠΈ CONCURRENCY ΠΎΠ±ΡΠ°ΡΠ½ΠΎ, ΡΠ΅ΡΡΠΈΡΡΠ΅ΠΌ. ΠΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΠΏΠΎΠΌΠ΅Π½ΡΠ»ΠΎΡΡ, Libvips ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΠΎΡΠΊΠ°Π·ΡΠ²Π°Π»ΡΡ ΡΠ΅ΡΠ°ΠΉΠ·ΠΈΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½ΠΎ. ΠΡΠ΅ ΠΏΠΎΠΏΡΡΠΊΠΈ ΠΏΠΎΠ±ΠΎΡΠΎΡΡ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΏΠΎΡΠ΅ΡΠΏΠ΅Π»ΠΈ Π½Π΅ΡΠ΄Π°ΡΡ ΠΈ ΡΠΊΠ°Π·Π°ΡΡ ΠΏΠΎ ΠΏΡΠ°Π²Π΄Π΅, Ρ Π·Π°ΠΏΠ°ΡΠΈΠ»ΡΡ Π΅Π΅ ΡΠ΅ΡΠ°ΡΡ ΠΈ ΡΠ΅ΡΠΈΠ» ΠΎΠ±ΠΎΠΉΡΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π½Π° Π΄ΡΡΠ³ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅.
ΠΡΠ΅ Π±ΠΎΠ»Π΅Π΅ ΠΈΠ»ΠΈ ΠΌΠ΅Π½Π΅Π΅ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ΄ΡΠ° Linux (3.9+ ΠΈ 2.6.32-417+ Π² CentOS 6) ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΎΠΏΡΠΈΡ SO_REUSE, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ°ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ°Π½Π½ΡΠΉ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ ΡΠ΄ΠΎΠ±Π½Π΅Π΅, ΡΠ΅ΠΌ Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²ΠΊΠ° ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ ΡΡΠΎΡΠΎΠ½Π½Π΅Π³ΠΎ ΠΠ, ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΊΠ°ΠΊ HAProxy, Ρ.ΠΊ. Π½Π΅ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π±ΡΡΡΡΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΠΈ ΡΠ±ΠΈΡΠ°ΡΡ ΠΈΠ½ΡΡΠ°Π½ΡΡ.
ΠΠΎΡΡΠΎΠΌΡ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ SO_REUSE ΠΈ ΠΎΠΏΡΠΈΡ «—scale» Π² Docker compose, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΊΠ°Π·Π°ΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΠΌΡΡ
ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠΎΠ².
ΠΡΠ΅ΠΌΡ ΠΌΠ΅ΡΠΈΡΡ
ΠΡΠΈΡΠ»ΠΎ Π²ΡΠ΅ΠΌΡ ΠΎΡΠ΅Π½ΠΈΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π½Π°ΡΠΈΡ ΡΡΡΠ΄ΠΎΠ².
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ:
- CPU: Intel Xeon E5-1650 v3 @ 3.50GHz 6 cores (12 vCPU)
- RAM: 64 Gb (ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΎΠΊΠΎΠ»ΠΎ 1-2 Gb)
- ΠΠΎΠ»-Π²ΠΎ Π²ΠΎΡΠΊΠ΅ΡΠΎΠ²: 12
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ:
FIle | ΠΡΡ ΠΎΠ΄Π½ΠΎΠ΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ | Node RPS | Go RPS |
---|---|---|---|
bird_1920x1279.jpg | 800×533 | 34 | 73 |
clock_1280x853. jpg | 400×267 | 69 | 206 |
clock_6000x4000.jpg | 4000×2667 | 1.9 | 5.6 |
fireworks_640x426.jpg | 100×67 | 114 | 532 |
cc_705x453.png | 405×260 | 21 | 33 |
penguin_380x793.png | 280×584 | 28 | 69 |
wine_800x800.png | 600×600 | 27 | 49 |
wine_800x800.png | 200×200 | 55 | 114 |
ΠΠΎΠ»ΡΡΠ΅ Π±Π΅Π½ΡΠΌΠ°ΡΠΊΠΎΠ² (ΠΏΡΠ°Π²Π΄Π° Π±Π΅Π· ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ Node Π²Π΅ΡΡΠΈΠ΅ΠΉ) Π½Π° wiki ΡΡΡΠ°Π½ΠΈΡΠ΅.
ΠΠ°ΠΊ Π²ΠΈΠ΄Π½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π΅Π»ΡΠ²Π°Π»ΠΈ ΡΠ΅ΡΠ°ΠΉΠ· ΠΌΡ Π½Π΅ Π½Π°ΠΏΡΠ°ΡΠ½ΠΎ, ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΡΠΊΠΎΡΠΎΡΡΠΈ ΡΠΎΡΡΠ°Π²ΠΈΠ»ΠΎ ΠΎΡ 30 Π΄ΠΎ 400% (Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΡΠ»ΡΡΠ°ΡΡ
). ΠΡΠ»ΠΈ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠ΅ΡΠ°ΠΉΠ·ΠΈΡΡ Π΅ΡΠ΅ Π±ΡΡΡΡΠ΅Π΅, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΊΡΡΡΠΈΡΡ ΡΡΡΠΊΠΈ Β«speedΒ» ΠΈ Β«qualityΒ» Π² libimagequant. ΠΠ½ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠΊΡΠ°ΡΠΈΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΈΠ»ΠΈ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΡΠΊΠΎΡΠΎΡΡΡ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅Π½ΠΎΠΉ ΠΏΠΎΡΠ΅ΡΠΈ ΠΊΠ°ΡΠ΅ΡΡΠ²Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ.
ΠΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π° GitHub.
ΠΠΈΠ½Π΄ΠΈΠ½Π³ Go ΠΊ libimagequant ΡΠ°ΠΊ ΠΆΠ΅ Π½Π° GitHub.
ImageOptim β ΡΠ»ΡΡΡΠ΅Π½Π½ΠΎΠ΅ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ°
ImageOptim β ΡΠ»ΡΡΡΠ΅Π½Π½ΠΎΠ΅ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ°Β Β
ΠΠΎΠ»Π΅Π΅ Π±ΡΡΡΡΡΠ΅ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΡ ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
Π£ΠΌΠ΅Π½ΡΡΠ°Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ βββΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ½ΠΈ Π·Π°Π½ΠΈΠΌΠ°ΡΡ ΠΌΠ΅Π½ΡΡΠ΅ ΠΌΠ΅ΡΡΠ° Π½Π° Π΄ΠΈΡΠΊΠ΅ ΠΈ Π·Π°Π³ΡΡΠΆΠ°ΡΡΡΡ Π±ΡΡΡΡΠ΅Π΅βββΠΏΡΠΈΠΌΠ΅Π½ΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠ΅ ΡΠΆΠ°ΡΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠΎΡ ΡΠ°Π½ΡΠ΅Ρ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ.
Π€Π°ΠΉΠ»Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΎΡΠΈΡΠ΅Π½Ρ ΠΎΡ ΠΏΡΠ»ΠΈ
Π£Π΄Π°Π»ΡΠ΅Ρ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡΠΉ ΠΌΡΡΠΎΡ : ΡΠ°ΡΡΠ½ΡΠ΅ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅ EXIF ββ Ρ ΡΠΈΡΡΠΎΠ²ΡΡ ΠΊΠ°ΠΌΠ΅Ρ, Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΡΡΠΊΠΈΠ·Ρ, ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΈ Π½Π΅Π½ΡΠΆΠ½ΡΠ΅ ΡΠ²Π΅ΡΠΎΠ²ΡΠ΅ ΠΏΡΠΎΡΠΈΠ»ΠΈ.
ΠΡΡΡΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Ρ ΠΏΠ΅ΡΠ΅ΡΠ°ΡΠΊΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ
ΠΠ΅ΡΡΠΎΠ²Π½ΠΎ ΡΠΎΡΠ΅ΡΠ°Π΅Ρ Π² ΡΠ΅Π±Π΅ Π²ΡΠ΅ Π»ΡΡΡΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ: MozJPEG, pngquant, Pngcrush, 7zip, SVGO ΠΈ Google Zopfli. ΠΡΠ΅ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ ΠΈ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ .
Β«ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ, ΠΎΠ½ΠΎ Π½Π΅Π²Π΅ΡΠΎΡΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎΠ΅ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ Π΄Π΅Π»Π°Π΅Ρ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠΎ, ΡΡΠΎ ΠΎΠ±Π΅ΡΠ°Π΅ΡΒ» β MacWorld
Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ Ρ ΡΠΆΠ΅Β» β MacStories
ImageOptim ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π² ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅ (Π»Π΅Π³ΠΊΠΎ ΡΠΆΠΈΠΌΠ°Π΅Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, Β«ΡΠΎΡ ΡΠ°Π½Π΅Π½Π½ΡΠ΅ Π΄Π»Ρ ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ°Β» Π² Photoshop). ΠΡΠΎΒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΒ Π΄Π»Ρ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π΄Π»Ρ Mac ΠΈ iPhone/iPad (Π΅ΡΠ»ΠΈ Π²Ρ Π½Π°ΡΡΡΠΎΠΈΡΠ΅ Xcode Π΄Π»Ρ Π»ΡΡΡΠ΅ΠΉ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ).
ImageOptim ΡΠ΄Π°Π»ΡΠ΅Ρ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅ EXIF ββ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ GPS ΠΈ ΡΠ΅ΡΠΈΠΉΠ½ΡΠΉ Π½ΠΎΠΌΠ΅Ρ ΠΊΠ°ΠΌΠ΅ΡΡ, ΡΡΠΎΠ±Ρ Π²Ρ ΠΌΠΎΠ³Π»ΠΈ ΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, Π½Π΅ ΡΠ°ΡΠΊΡΡΠ²Π°Ρ Π»ΠΈΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ (Π½ΠΎ Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½Ρ).
ΠΡΠΊΡΡΡΡΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄
ImageOptim β ΡΡΠΎ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Π½Π° ΡΡΠ»ΠΎΠ²ΠΈΡΡ GPL v2 ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½Π΅ΠΉ Π²Π΅ΡΡΠΈΠΈ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°Π·Π²Π΅ΡΠ²ΠΈΡΡ ΠΊΠΎΠ΄ Π½Π° GitHub ΠΈ ΡΠ»ΡΡΡΠΈΡΡ Π΅Π³ΠΎ! ΠΠ΅ ΡΡΠ΅ΡΠ½ΡΠΉΡΠ΅ΡΡ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊΠΎ ΠΌΠ½Π΅ Π·Π° ΠΏΠΎΠΌΠΎΡΡΡ.
PNGOUT ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ Ardfry Imaging, LLC ΠΈ Π½Π΅ ΠΏΠΎΠ΄ΠΏΠ°Π΄Π°Π΅Ρ ΠΏΠΎΠ΄ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ GPL .
Π§Π°ΡΡΠΎ Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ
- Π§Π΅ΠΌ ImageOptim ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ TinyPNG, MozJPEG ΠΈΠ»ΠΈ Guetzli?
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ°ΠΊΠΎΠ΅ ΠΆΠ΅ ΠΈΠ»ΠΈ Π»ΡΡΡΠ΅Π΅ ΡΠΆΠ°ΡΠΈΠ΅, Π΅ΡΠ»ΠΈ Π²ΠΊΠ»ΡΡΠΈΡΠ΅ ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΌΠΈΠ½ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Ρ ΠΏΠΎΡΠ΅ΡΡΠΌΠΈ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ ImageOptim.
Π’Π°ΠΊΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, ΠΊΠ°ΠΊ gif.ski/pngquant/TinyPNG
/JPEGMini/MozJPEG, ΡΠΌΠ΅Π½ΡΡΠ°ΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠΆΠ°ΡΠΈΠ΅ Ρ ΠΏΠΎΡΠ΅ΡΡΠΌΠΈ , ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠ½ΠΈΠΆΠ°Π΅Ρ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΡΠ΅Π³ΠΎ ImageOptim Π½Π΅ Π΄Π΅Π»Π°Π΅Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ°Π·ΡΠ΅ΡΠΈΡΠ΅ ΡΡΠΎ. - ΠΠΎΠ³Ρ Π»ΠΈ Ρ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ± Π°Π²ΡΠΎΡΡΠΊΠΈΡ ΠΏΡΠ°Π²Π°Ρ ΠΈ ΠΊΠ°ΠΌΠ΅ΡΠ΅?
ΠΠ°. Π‘Π½ΠΈΠΌΠΈΡΠ΅ ΡΠ»Π°ΠΆΠΎΠΊ Π£Π΄Π°Π»ΠΈΡΡ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΠ΅ JPEG Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ .
- ΠΠ΅Π΄Π»Π΅Π½Π½ΠΎ Π½Π° PNG ΡΠ°ΠΉΠ»Ρ. ΠΠ°ΠΊ Ρ ΠΌΠΎΠ³Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ Π±ΡΡΡΡΠ΅Π΅?
Π Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ ΡΠ½ΠΈΠΌΠΈΡΠ΅ Π³Π°Π»ΠΎΡΠΊΠΈ Ρ PNGOUT ΠΈ Zopfli . ΠΠ΅Π· ΡΡΠΈΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π±ΡΡΡΡΠ΅Π΅, Π½ΠΎ Π±ΡΠ΄Π΅Ρ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠΉ.
- ΠΡΠ΄Π΅Ρ Π»ΠΈ ImageOptim Π² App Store?
ΠΠ΅Ρ, ΠΈ, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΠΎΡΡΠ΅ΡΠ΅Π³Π°ΠΉΡΠ΅ΡΡ ΠΏΠΎΠ΄Π΄Π΅Π»ΠΎΠΊ Π² App Store! Apple ΡΠΆΠ΅ ΠΏΡΠΎΠ΄Π°Π΅Ρ ΡΡΠΈ.
ImageOptim ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ Π½Π° ΡΡΠ»ΠΎΠ²ΠΈΡΡ , ΠΊΠΎΡΠΎΡΡΠ΅ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ Π³ΠΎΠ²ΠΎΡΡΡ: Β«ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π΅Π»Π°ΡΡ Π²ΡΠ΅, ΡΡΠΎ Ρ ΠΎΡΠΈΡΠ΅ , Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π²Ρ Π»ΠΈΡΠ°Π΅ΡΠ΅ ΡΡΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Ρ Π΄ΡΡΠ³ΠΈΡ Β». Apple Π½Π΅ Π΄ΠΎΠΏΡΡΠΊΠ°Π΅Ρ ΡΠ°ΠΊΠΈΡ ΡΠ°Π·ΡΠ΅ΡΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΠΉ. Apple ΡΡΠ΅Π±ΡΠ΅Ρ, ΡΡΠΎΠ±Ρ Π²ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ App Store ΠΏΡΠΈΠ½ΡΠ»ΠΈ DRM (Π·Π°ΡΠΈΡΠ° ΠΎΡ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ) ΠΈ ΡΡΠΈΠ΄ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π² iTunes EULA .
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ ImageOptim Π·Π΄Π΅ΡΡ, DRM — Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΠΎ. ΠΠ³ΠΎ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²Π°ΠΌ Π΄Π΅Π»ΠΈΡΡΡΡ ΠΈΠΌ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ Π΅Π³ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΒ Π² Π»ΡΠ±ΠΎΠΉ ΡΡΡΠ°Π½Π΅ ΠΌΠΈΡΠ°βββΠ΄Π°ΠΆΠ΅ ΠΏΡΠΎΠ΄Π°Π²Π°ΡΡβββ, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ Π·Π°ΠΏΡΠ΅ΡΠ°Π΅ΡΠ΅ Π½ΠΈΠΊΠΎΠΌΡ Π΄ΡΡΠ³ΠΎΠΌΡ Π΄Π΅Π»Π°ΡΡ ΡΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΠΎΠΆΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
ΠΠΎΠ΄ΠΏΠΈΡΠΈΡΠ΅ΡΡ Π½Π° ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ Π±ΡΠ»Π»Π΅ΡΠ΅Π½Ρ
Π‘ΠΎΠ²Π΅ΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΠΎΠ² ΠΏΠΎ ImageOptim, gif. ski ΠΈ ΡΠΎΡΠΌΠ°ΡΠ°ΠΌ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π² ΡΠ΅Π»ΠΎΠΌ. ΠΠΎΠ²ΠΎΡΡΠΈ ΠΎ ΠΏΡΠ΅Π΄ΡΡΠΎΡΡΠΈΡ ΡΡΠ½ΠΊΡΠΈΡΡ ΠΈ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌ Π²Π΅ΡΡΠΈΡΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Ρ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Ρ.
ΠΠ°Ρ Π°Π΄ΡΠ΅Ρ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΡ:Β Β
LoyaltyHarbour Image Optimizer — ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ: ΡΠΆΠ°ΡΠΈΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ SEO-ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ
ΠΠΎΡΡΡΠΏΠ΅Π½ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΠΉ ΠΏΠ»Π°Π½
Π Π΅ΠΉΡΠΈΠ½Π³ (4,7)
ΠΡΠ·ΡΠ²Ρ
766
Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ
ΠΠΎΡΠ»ΡΠ½ΠΎΡΡΡHarbour
ΠΠ°Π»Π΅ΡΠ΅Ρ ΠΈΠ·Π±ΡΠ°Π½Π½ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΡ
Π‘ΠΎΠ·Π΄Π°Π½ Π΄Π»Ρ Π²Π°ΡΠ΅Π³ΠΎ Π±ΠΈΠ·Π½Π΅ΡΠ°
ΠΠ± ΡΡΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ
ΠΠ°ΠΏΡΡΠ΅Π½
16 ΠΌΠ°Ρ 2016 Π³.
Π―Π·ΡΠΊΠΈ
ΠΠ½Π³Π»ΠΈΠΉΡΠΊΠΈΠΉ
ΠΠ΅Π³ΠΊΠΎ ΡΠΆΠΈΠΌΠ°ΠΉΡΠ΅ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΡΠΉΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ. Π£Π»ΡΡΡΠΈΡΠ΅ ΡΠΊΠΎΡΠΎΡΡΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠ°ΠΉΡΠ°, SEO ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΎΠΏΡΡ!
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Image Optimizer Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π»Π΅Π³ΠΊΠΎ ΡΠΆΠΈΠΌΠ°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π·Π°ΠΌΠ΅ΡΠ°ΡΡΠΈΠΉ ΡΠ΅ΠΊΡΡ, ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²ΡΠ²Π°ΡΡ ΠΈΠΌΠ΅Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²ΡΠ²Π°ΡΡ PNG Π² JPEG. Π‘ΠΆΠ°ΡΡΠ΅ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΡΠ»ΡΡΡΠΈΡΡ ΡΠΊΠΎΡΠΎΡΡΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π²Π°ΡΠ΅Π³ΠΎ ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°, SEO ΠΈ ΡΠ΄ΠΎΠ±ΡΡΠ²ΠΎ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ. ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ΅ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΎ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Image Optimizer Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ Π²Π°Ρ ΠΌΠ°Π³Π°Π·ΠΈΠ½ Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ Π½ΠΎΠ²ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡ , ΠΏΠΎΡΡΠΎΠΌΡ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡΡΡΡ ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΡ ΠΈ Π½Π΅ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΡ .
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Image Optimizer Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π»Π΅Π³ΠΊΠΎ ΡΠΆΠΈΠΌΠ°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π·Π°ΠΌΠ΅ΡΠ°ΡΡΠΈΠΉ ΡΠ΅ΠΊΡΡ, ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²ΡΠ²Π°ΡΡ ΡΠ°ΠΉΠ»Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²ΡΠ²Π°ΡΡ PNG Π² JPEG. Π‘ΠΆΠ°ΡΡΠ΅ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ ΡΠ»ΡΡΡΠΈΡΡ ΡΠΊΠΎΡΠΎΡΡΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π²Π°ΡΠ΅Π³ΠΎ ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°, SEO ΠΈ ΡΠ΄ΠΎΠ±ΡΡΠ²ΠΎ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ. ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ΅ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΎ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Image Optimizer Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ Π²Π°Ρ ΠΌΠ°Π³Π°Π·ΠΈΠ½ Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ Π½ΠΎΠ²ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡ , ΠΏΠΎΡΡΠΎΠΌΡ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡΡΡΡ ΠΎ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΡ ΠΈ Π½Π΅ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΡ . Π΅ΡΠ΅
Π¦Π΅Π½Ρ
ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
- 50 ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ (ΠΎΠ΄Π½ΠΎΠΊΡΠ°ΡΠ½ΠΎ)
- ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅/ΡΡΡΠ½ΠΎΠ΅ ΡΠΆΠ°ΡΠΈΠ΅
- ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Π·Π°ΠΌΠ΅ΡΠ°ΡΡΠ΅Π³ΠΎ ΡΠ΅ΠΊΡΡΠ°
- ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°ΠΉΠ»Π°
- ΠΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ PNG Π² JPG
- 30-Π΄Π½Π΅Π²Π½Π°Ρ ΡΠ΅Π·Π΅ΡΠ²Π½Π°Ρ ΠΊΠΎΠΏΠΈΡ
ΠΠ°Π·ΠΎΠ²ΡΠΉ
$4,99/ΠΌΠ΅ΡΡΡ
- 1000 ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ/ΠΌΠ΅ΡΡΡ
- ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅/ΡΡΡΠ½ΠΎΠ΅ ΡΠΆΠ°ΡΠΈΠ΅
- ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Π·Π°ΠΌΠ΅ΡΠ°ΡΡΠ΅Π³ΠΎ ΡΠ΅ΠΊΡΡΠ°
- ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°ΠΉΠ»Π°
- ΠΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ PNG Π² JPG
- 30-Π΄Π½Π΅Π²Π½Π°Ρ ΡΠ΅Π·Π΅ΡΠ²Π½Π°Ρ ΠΊΠΎΠΏΠΈΡ
ΠΠ΅ΡΠ΅Π΄ΠΎΠ²ΠΎΠΉ
$9,99/ΠΌΠ΅ΡΡΡ
- 2000 ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ/ΠΌΠ΅ΡΡΡ
- ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅/ΡΡΡΠ½ΠΎΠ΅ ΡΠΆΠ°ΡΠΈΠ΅
- ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Π·Π°ΠΌΠ΅ΡΠ°ΡΡΠ΅Π³ΠΎ ΡΠ΅ΠΊΡΡΠ°
- ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°ΠΉΠ»Π°
- ΠΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ PNG Π² JPG
- 30-Π΄Π½Π΅Π²Π½Π°Ρ ΡΠ΅Π·Π΅ΡΠ²Π½Π°Ρ ΠΊΠΎΠΏΠΈΡ
ΠΡΠ΅ΠΌΠΈΡΠΌ
$19,99/ΠΌΠ΅ΡΡΡ
- 5000 ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ/ΠΌΠ΅ΡΡΡ
- ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅/ΡΡΡΠ½ΠΎΠ΅ ΡΠΆΠ°ΡΠΈΠ΅
- ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Π·Π°ΠΌΠ΅ΡΠ°ΡΡΠ΅Π³ΠΎ ΡΠ΅ΠΊΡΡΠ°
- ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°ΠΉΠ»Π°
- ΠΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ PNG Π² JPG
- 30-Π΄Π½Π΅Π²Π½Π°Ρ ΡΠ΅Π·Π΅ΡΠ²Π½Π°Ρ ΠΊΠΎΠΏΠΈΡ
ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠ΅ΡΠΏΠ»Π°ΡΠ½ΠΎ
- 50 ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ (ΠΎΠ΄Π½ΠΎΠΊΡΠ°ΡΠ½ΠΎ)
- ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅/ΡΡΡΠ½ΠΎΠ΅ ΡΠΆΠ°ΡΠΈΠ΅
- ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Π·Π°ΠΌΠ΅ΡΠ°ΡΡΠ΅Π³ΠΎ ΡΠ΅ΠΊΡΡΠ°
- ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°ΠΉΠ»Π°
- ΠΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ PNG Π² JPG
- 30-Π΄Π½Π΅Π²Π½Π°Ρ ΡΠ΅Π·Π΅ΡΠ²Π½Π°Ρ ΠΊΠΎΠΏΠΈΡ
ΠΠ°Π·ΠΎΠ²ΡΠΉ
$4,99/ΠΌΠ΅ΡΡΡ
- 1000 ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ/ΠΌΠ΅ΡΡΡ
- ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅/ΡΡΡΠ½ΠΎΠ΅ ΡΠΆΠ°ΡΠΈΠ΅
- ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Π·Π°ΠΌΠ΅ΡΠ°ΡΡΠ΅Π³ΠΎ ΡΠ΅ΠΊΡΡΠ°
- ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°ΠΉΠ»Π°
- ΠΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ PNG Π² JPG
- 30-Π΄Π½Π΅Π²Π½Π°Ρ ΡΠ΅Π·Π΅ΡΠ²Π½Π°Ρ ΠΊΠΎΠΏΠΈΡ
ΠΠ΅ΡΠ΅Π΄ΠΎΠ²ΠΎΠΉ
$9,99/ΠΌΠ΅ΡΡΡ
- 2000 ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ/ΠΌΠ΅ΡΡΡ
- ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅/ΡΡΡΠ½ΠΎΠ΅ ΡΠΆΠ°ΡΠΈΠ΅
- ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Π·Π°ΠΌΠ΅ΡΠ°ΡΡΠ΅Π³ΠΎ ΡΠ΅ΠΊΡΡΠ°
- ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°ΠΉΠ»Π°
- ΠΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ PNG Π² JPG
- 30-Π΄Π½Π΅Π²Π½Π°Ρ ΡΠ΅Π·Π΅ΡΠ²Π½Π°Ρ ΠΊΠΎΠΏΠΈΡ
ΠΡΠ΅ΠΌΠΈΡΠΌ
$19,99/ΠΌΠ΅ΡΡΡ
- 5000 ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ/ΠΌΠ΅ΡΡΡ
- ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅/ΡΡΡΠ½ΠΎΠ΅ ΡΠΆΠ°ΡΠΈΠ΅
- ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ Π·Π°ΠΌΠ΅ΡΠ°ΡΡΠ΅Π³ΠΎ ΡΠ΅ΠΊΡΡΠ°
- ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°ΠΉΠ»Π°
- ΠΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ PNG Π² JPG
- 30-Π΄Π½Π΅Π²Π½Π°Ρ ΡΠ΅Π·Π΅ΡΠ²Π½Π°Ρ ΠΊΠΎΠΏΠΈΡ
ΠΡΠ΅ ΠΏΠ»Π°ΡΠ΅ΠΆΠΈ Π²ΡΡΡΠ°Π²Π»ΡΡΡΡΡ Π² Π΄ΠΎΠ»Π»Π°ΡΠ°Ρ Π‘Π¨Π. Π Π΅Π³ΡΠ»ΡΡΠ½ΡΠ΅ ΠΏΠ»Π°ΡΠ΅ΠΆΠΈ ΠΈ ΠΏΠ»Π°ΡΠ΅ΠΆΠΈ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π²ΡΡΡΠ°Π²Π»ΡΡΡΡΡ ΠΊΠ°ΠΆΠ΄ΡΠ΅ 30Β Π΄Π½Π΅ΠΉ. ΠΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π²ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ ΡΠ΅Π½ΠΎΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ
766 ΠΎΡΠ·ΡΠ²ΠΎΠ²
ΠΠ±ΡΠΈΠΉ ΡΠ΅ΠΉΡΠΈΠ½Π³
ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π½Π° ΡΡΠΎΠ²Π΅Π½Ρ ΡΠ΅ΠΉΡΠΈΠ½Π³Π°
- 92% ΠΎΡΠ΅Π½ΠΎΠΊ — 5 Π·Π²Π΅Π·Π΄
706
- 5% ΠΎΡΠ΅Π½ΠΎΠΊ — 4 Π·Π²Π΅Π·Π΄Ρ
36
- 1% ΠΎΡΠ΅Π½ΠΎΠΊ — 3 Π·Π²Π΅Π·Π΄Ρ
8
- 1% ΠΎΡΠ΅Π½ΠΎΠΊ — 2 Π·Π²Π΅Π·Π΄Ρ
4
- 2% ΠΎΡΠ΅Π½ΠΎΠΊ ΡΠΎΡΡΠ°Π²Π»ΡΡΡ 1 Π·Π²Π΅Π·Π΄Ρ
12
20 Π°ΠΏΡΠ΅Π»Ρ 2023 Π³.
ΠΡΠΎΡΡΠΎΠ΅ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π΅ ΡΡΠ°Π½Π΄Π°ΡΡΡ. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² Π±ΡΡΡΡΠ°Ρ ΠΈ ΡΠ΅Π»ΠΎΠ²Π΅ΡΠ½Π°Ρ, Π±Π΅Π· ΡΠ°Π·Π΄ΡΠ°ΠΆΠ°ΡΡΠΈΡ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ² ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΏΠΈΡΡΠΌΠ° ΠΈ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ ΠΎΡΠ²Π΅ΡΠ° Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ 3 Π΄Π½Π΅ΠΉ. ΠΠ΄Π΅ΠΌ Π΅ΡΠ΅ Π½ΠΎΠ²ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΈΠΉ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ΠΎΡ ΡΠ΅Ρ ΠΆΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² LoyaltyHarbour.
Π¦Π΅Π½ΡΡ Π€ΡΠ°Π½ΠΊΠΎ
ΠΡΠ°Π·ΠΈΠ»ΠΈΡ
ΠΡΠ΅ΠΌΡ, ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ΅ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ: 1 Π΄Π΅Π½Ρ
ΠΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΎ 20 Π°ΠΏΡΠ΅Π»Ρ 2023 Π³.
ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ ΡΡΠΎ ΠΎΡΠ»ΠΈΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄Π»Ρ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ Π²ΡΠ²Π΅ΡΡΠΈ Π΅Π³ΠΎ Π½Π° Π½ΠΎΠ²ΡΠΉ ΡΡΠΎΠ²Π΅Π½Ρ. ΠΡΠ»ΠΎ Π±Ρ Π΅ΡΠ΅ Π±ΠΎΠ»Π΅Π΅ ΡΠ΄ΠΈΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ, Π΅ΡΠ»ΠΈ Π±Ρ Π±ΡΠ» Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π²ΡΡΡΠΎΡΠΎΠ½Π½Π΅ΠΉ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ.
ΠΠΆΠ΅ΡΡΠ΅ΡΡΠΎΠ½ ΠΠ°Π»ΠΌ
ΠΠ²ΡΡΡΠ°Π»ΠΈΡ
ΠΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ: 9 Π΄Π½Π΅ΠΉ
30 ΠΌΠ°ΡΡΠ° 2023 Π³.
ΠΡΠ΅Π½Ρ Π½ΡΠ°Π²ΠΈΡΡΡ! ΠΡΠΎΡΡΠΎ, ΠΈ ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΡΠ°Π±ΠΎΡΡ Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ -Π»ΠΈΠ±ΠΎ Π³ΠΎΠ»ΠΎΠ²Π½ΡΡ Π±ΠΎΠ»Π΅ΠΉ. ΠΡΠ΅Π½Ρ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠ΅ ΠΌΠΎΠ³Ρ ΠΆΠΈΡΡ Π±Π΅Π· ΡΡΠΎΠ³ΠΎ!
ΠΠΎΡΠΎΠ±ΠΊΠ° Ρ ΡΡΠΎΠΏΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΡΡΠΊΡΠ°ΠΌΠΈ
Π‘ΠΎΠ΅Π΄ΠΈΠ½Π΅Π½Π½ΡΠ΅ Π¨ΡΠ°ΡΡ
ΠΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ: Π±ΠΎΠ»Π΅Π΅ 1 Π³ΠΎΠ΄Π°
ΠΡΠ΅ ΠΎΡΠ·ΡΠ²Ρ
ΠΠ± ΡΡΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ
ΠΠ°ΠΏΡΡΠ΅Π½
16 ΠΌΠ°Ρ 2016 Π³.